butunun onclick olayına müdahale (runtime)

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
cemrebilgisayar
Üye
Mesajlar: 52
Kayıt: 02 Nis 2007 04:52
İletişim:

butunun onclick olayına müdahale (runtime)

Mesaj gönderen cemrebilgisayar »

arkadaşlar program runtime da iken butonun onclick olayına kod atmasını istiyorum.
CEMRE BİLGİSAYAR YAZILIM
http://www.cemre.web.tr
Kullanıcı avatarı
CiTiZEN
Üye
Mesajlar: 1163
Kayıt: 06 Oca 2008 04:15

Re: butunun onclick olayına müdahale (runtime)

Mesaj gönderen CiTiZEN »

biraz daha bilgi verirseniz daha iyi yardımcı olurum ama şu şekilde işinizi görmesi lazım:

@bileseniniz.onclick:=@clickprocedurunuz;
UWESIS CORPORATION
cemrebilgisayar
Üye
Mesajlar: 52
Kayıt: 02 Nis 2007 04:52
İletişim:

Re: butunun onclick olayına müdahale (runtime)

Mesaj gönderen cemrebilgisayar »

arama diye bir formum var. benim yapmak isteğim diğer formlardan arama formunu çalıştırdığımda arama formunun uygula butonuna bir kod göndermem lazım. bunun sebebide her formdan değişik kod göndermem gerekiyor.
CEMRE BİLGİSAYAR YAZILIM
http://www.cemre.web.tr
Kullanıcı avatarı
CiTiZEN
Üye
Mesajlar: 1163
Kayıt: 06 Oca 2008 04:15

Re: butunun onclick olayına müdahale (runtime)

Mesaj gönderen CiTiZEN »

vaktinde banada lazım olmuştu saolsun @mehmetcan yazmış vermişti.kodlar editten gönderilen string veriyi procedure olarak kullanıyor.

Kod: Tümünü seç

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  published
    procedure success(Sender:Tobject);
  end;


procedure TForm1.Button1Click(Sender: TObject);
type
  Tyordam  = procedure of object;
var
  a1 : TMethod;
  yordam : TYordam;
begin
  a1.Data:=Pointer(Form1); // veya nill
  a1.code:=MethodAddress(Edit1.Text);  // bu örnekte sadece success calisir
  if assigned(a1.code) then
  begin
    yordam:=TYordam(a1);
    yordam;
  end;
end;

procedure Tform1.success(Sender: Tobject);
begin
   ......
end;
Kolay Gelsin
UWESIS CORPORATION
cemrebilgisayar
Üye
Mesajlar: 52
Kayıt: 02 Nis 2007 04:52
İletişim:

Re: butunun onclick olayına müdahale (runtime)

Mesaj gönderen cemrebilgisayar »

kusura bakma ama ben bu koddan hiçbirşey anlamadım.
CEMRE BİLGİSAYAR YAZILIM
http://www.cemre.web.tr
Kullanıcı avatarı
CiTiZEN
Üye
Mesajlar: 1163
Kayıt: 06 Oca 2008 04:15

Re: butunun onclick olayına müdahale (runtime)

Mesaj gönderen CiTiZEN »

anladığım kadarıyla butona farklı yerlerden click yordamları gönderip farklı formlarda istediğin farklı görevleri yaptırmak yukardaki kod bu şekilde çalışıyor, edit 1 yerine istediğin proceduru gönderebilirsin eğer yanlış anlamadıysam..
UWESIS CORPORATION
orhancc
Üye
Mesajlar: 585
Kayıt: 24 Ağu 2010 02:14
Konum: İstanbul / Kadıköy
İletişim:

Re: butunun onclick olayına müdahale (runtime)

Mesaj gönderen orhancc »

Düğmenin onclickine istediğin prosedürü bağlaman yeterli olacaktır.

Kod: Tümünü seç


Button5.OnClick := BindAtRuntime;

procedure TForm3.BindAtRuntime(Sender: TObject);
begin
  ShowMessage('Ben Çalışma zamanında bağlandım');
end;

Kullanıcı avatarı
tux
Üye
Mesajlar: 22
Kayıt: 01 Nis 2008 03:24

Re: butunun onclick olayına müdahale (runtime)

Mesaj gönderen tux »

merhaba,

öncelikle arkadaşlarımızın gönderdiği kod işini görecektir fakat burada asıl senin işini yapacak olan Sender parametresi..
hangi formdan çağırdığını Sender parametresinden alabilirsin, diğer yandan click yordamını prosedür değişkenler aracılığı ile değiştirebilirsin
örnek vermek gerekirse ekteki uygulama işini görecektir
Dosya ekleri
ornekapp.zip
Örnek Uygulama
(25.62 KiB) 116 kere indirildi
Cevapla