formlar arası değişken alışverişi

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
lyon
Üye
Mesajlar: 22
Kayıt: 17 Eki 2006 11:58
Konum: Antalya

formlar arası değişken alışverişi

Mesaj gönderen lyon »

merhaba;

ben programcılıkta oldukça acemiyim, delphide de çok temel konuları biliyorum. yalnız bitirme ödevim amacı ile bir konuyu sizlere danışmam gerekiyor, basit bir ayrıntı gibi gözüküyor ama kitaplarda ve internette araştırdım, bulamadım... form1 üzerinde kullanıcının butona tıklaması neticesinde form2 açılacak, kullanıcı form2'deki edit dosyası içerisine kendisinden istenen veriyi girecek ve onay butonuna tıklayacak... form2 kapanacak ve form2de atanan bu değişken form1 üzerinde kullanılacak...

basit konular ile forumu işgel ettiğim için özür dilerim, ancak gerçekten bazı konularda yardıma ihtiyacım oluyor, belki bazılarınız ile msn den irtibata geçersek daha kullanışlı olur...

saygılar, sevgiler....
danaci
Üye
Mesajlar: 178
Kayıt: 24 May 2005 01:45

Mesaj gönderen danaci »

önce projene her iki formu da create et ve form2 üzerine ne işlem yapacaksan edit, button gibi ekle ve kodlarını yaz

sonra form1 uses a form2 yi ekle,

daha sonra form1 de iken form2 yi çalıştırmak için bir buttonun örneğin oncilick olayına
form2:=Tdetail_form.create(self);
form2.ShowModal;
form2.close; yaz
Kullanıcı avatarı
dynamo
Üye
Mesajlar: 96
Kayıt: 21 Haz 2005 02:05
Konum: istanbul

Mesaj gönderen dynamo »

form1 ve form2 diye 2 formumuz var.form üzerindeki label1 in caption a , form2 üzerinde edit1 den girdğim değeri atamak istiyorum.

form2 üzerinde global bir değişken tanımlıyoruz:

Kod: Tümünü seç

var
  Form2: TForm2;
  str:string;



Kod: Tümünü seç


unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Label1: TLabel;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

uses Unit2;

{$R *.dfm}


//form2 yi çağırır
procedure TForm1.Button1Click(Sender: TObject);
begin
    form2.ShowModal;
    if unit2.str<>'' then
        Label1.Caption:=str;
end;

end.

form2 den değer girişi:

Kod: Tümünü seç


unit Unit2;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm2 = class(TForm)
    Edit1: TEdit;
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;
  str:string;

implementation

{$R *.dfm}

//tamam butonu
procedure TForm2.Button1Click(Sender: TObject);
begin
  str:=edit1.Text;
  Close;
end;

//kapat butonu
procedure TForm2.Button2Click(Sender: TObject);
begin
    Close;
end;

end.


NOT: form2 yi çağırırken "form2.ShowModal;" kullanmak gerekiyor. "form2.Show;" yazarsan çalışmaz. 8)
lyon
Üye
Mesajlar: 22
Kayıt: 17 Eki 2006 11:58
Konum: Antalya

Mesaj gönderen lyon »

ilginiz ve yardımınız için teşekkür ederim
Cevapla