![]() |
Auslöser?
Hallo allerseits,
mal wieder ne Frage: Ich habe sagen wir 10 Buttons auf einer Form. Allen ist bei OnClick das Ereignis "Button1OnClick" zugewiesen. Wie kann ich im nachhinein (wenn z.B. Btn7 gedrückt wurde) herausfinden, wer der Auslöser was??? ( also Btn7) :gruebel: Ich denke, das wisst ihr ausm Stehgreif :mrgreen: ... thx |
Re: Auslöser?
Delphi-Quellcode:
da ist der name des buttons drin
sender.name
|
Re: Auslöser?
Im OnClick:
Delphi-Quellcode:
ShowMessage((Sender as TButton).Name);
|
Re: Auslöser?
Zitat:
Delphi-Quellcode:
Das man da soviel zu schreiben kann :mrgreen: .
procedure TFormXYZ.ButtonXYZClick(Sender: TObject);
begin // nicht empfehlenswert, mit "harter" Typumwandlung; da kann sonstwas passieren: ShowMessage(TButton(Sender).Name); ShowMessage(TComponent(Sender).Name); // die etwas "sicherere" Variante; wenn der Sender mal kein Button bzw. keine Komponente ist, gibt's 'n EInvalidCast-Fehler ShowMessage((Sender as TButton).Name); ShowMessage((Sender as TComponent).Name); // mit "dynamischer Typüberprüfung"; wenn der Sender nicht den richtigen Typ hat, passiert nix: if Sender is TButton then ShowMessage((Sender as TButton).Name); if Sender is TComponent then ShowMessage((Sender as TComponent).Name); // oder auch noch: if Sender is TButton then // oder TComponent ShowMessage(TButton(Sender).Name); end; MfG |
Re: Auslöser?
Hi,
und wie wär es ganz einfach mit
Delphi-Quellcode:
Dann braucht es keinen Stringvergleich, keine Typumwandlung....
if Sender = btn7 then
|
Re: Auslöser?
Hai fLaSh11,
"Auslöser" ist ein ziemlich nichtssagender Titel für einen Thread. Damit andere User, welche womöglich die selbe Frage haben eine Antwort über die Suchfunktion finden würde ich dich doch bitten deinem Thread einen etwas aussagefähigeren Titel zu geben. Danke. :-D |
Re: Auslöser?
also
1. danke, klappt 2. Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:25 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz