Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Verstehe delphis Sender nicht (https://www.delphipraxis.net/203947-verstehe-delphis-sender-nicht.html)

kagi3624 9. Apr 2020 08:59

Delphi-Version: 6

Verstehe delphis Sender nicht
 
Also ich habe 2 Buttons, warum funktioniert diese Funktion bei mir nur für btn_I

Code:
procedure TForm1.btn_IClick(Sender: TObject);
begin
  if Sender = btn_I then
    Showmessage('T')
  else if Sender = btn_II then
    Showmessage('G');
end;
Erst wenn ich die zweite Fkt. einfüge

Code:
procedure TForm1.btn_IIClick(Sender: TObject);
begin
  btn_IClick(btn_II);
end;
Dabei sehe ich einen Haufen Quellcode wo diese zweite Funktion nicht vorkommt und der Sender einfach so mit einer if Abfrage übergeben wird.

DeddyH 9. Apr 2020 09:02

AW: Verstehe delphis Sender nicht
 
Du musst keinen eigenen Handler für den 2. Button schreiben, sondern kannst ihm auch den vom 1. Button zuweisen (im OI). Aber irgendein Handler muss dem ButtonClick schon zugewiesen werden, sonst passiert auch nichts.

hoika 9. Apr 2020 09:36

AW: Verstehe delphis Sender nicht
 
Hallo,
per Code (Ohne Object-Inspector) sähe das so aus

Delphi-Quellcode:
procedure TForm1.FormCreate;
begin
  btn_I.OnClick:= btn_X_Click;
  btn_II.OnClick:= btn_X_Click;
end;

procedure TForm1.btn_X_Click(Sender: TObject);
begin
  if Sender = btn_I then
    Showmessage('T')
  else if Sender = btn_II then
    Showmessage('G');
end;
Besser wäre natürlich ein anderer Name für die OnClick-Methode,
z.B. ButtonGeklickt

kagi3624 9. Apr 2020 09:39

AW: Verstehe delphis Sender nicht
 
ahhh, vielen Dank, ich muss es ja in diesem OI aus dem Dropdown Menu zusammenklicken, die Codeversion ist aber das, was ich als nicht Delphianer auf Anhieb verstehe

hoika 9. Apr 2020 14:03

AW: Verstehe delphis Sender nicht
 
Hallo,
deshalb hatte ich es per Code gemacht ;)

Zitat:

ich muss es ja in diesem OI aus dem Dropdown Menu zusammenklicken
Nein, musst Du nicht, Du kannst ...


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:24 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz