Arkadaşlar merhaba,
birkaç form üzerindeki aynı türden componentimin eventında aynı işlemi yaptıracağım için hepsinin eventına tek tek aynı kodu yazmak yerine daha etik bir yolu olabileceğini düşündüm. örneğin A formumdaki edit componentinin onmouseleave eventına yazacağım bir kodu B formundaki edit componentinin onmouseleave eventında gösterebilmek istiyorum. sonuç olarak aynı işi yapacak bu eventlar. böyle bir yöntem var mı acaba
Component eventını başka bir formun componentinde göstermek
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Re: Component eventını başka bir formun componentinde göstermek
İyi akşamlar. Evet mümkün. Söyle bir örnek vereyim.
Form1 ve Form2 olsun.
1) Form1 2 tane button koyalım. 1 buttona onclick olayına kod yazalım.
2 buttondanda form2 çağırın.
2) Form2 bir button ekleyiniz ve formun oncreate olayına bu kodu ekliyiniz.
Form1 ve Form2 olsun.
1) Form1 2 tane button koyalım. 1 buttona onclick olayına kod yazalım.
Kod: Tümünü seç
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage('Form1 deki Button1 eventi');
end;
Kod: Tümünü seç
procedure TForm1.Button2Click(Sender: TObject);
begin
Form2.Show; // uses Unit2; ekleyiniz
end;
Kod: Tümünü seç
procedure TForm2.FormCreate(Sender: TObject);
begin
Button1.OnClick := Form1.Button1.OnClick; // Form2 deki buttona Form1 deki onclick eventini ekliyor. Form1 için usese Unit1; ekleyiniz.
end;
Re: Component eventını başka bir formun componentinde göstermek
İlginiz için teşekkür ederim.
Re: Component eventını başka bir formun componentinde göstermek
Rica ederim kardeşim.Okann yazdı:İlginiz için teşekkür ederim.
Re: Component eventını başka bir formun componentinde göstermek
Ama bu Button1'in OnClick olayını öldürür. Yani Buttton1'in OnClick olayındaki kodların çalışmaz sadece Form1.Button1.OnClick Çalışır. O yüzden Button1.OnClick olayın varsa bunu bir değişkende tutup Form1.Button1.OnClick çalıştıktan sonra tekrar değişkende tuttuğun OnClick olayını çalıştırmalısın.