![]() |
Auslöser einer TAction auslesen
Hallo zusammen,
ich habe eine Action mit mehreren Komponenten (Button, MenuItem) verlinkt. Wie kann ich herausbekommen, wer letzten Endes die Action angestossen hat? Der Sender scheint keine grosse Hilfe zu sein, denn mit
Delphi-Quellcode:
im Execute-Event der Action erscheint diese selbst.
(Sender as TComponent).Name
Ciao, sepp001 |
Re: Auslöser einer TAction auslesen
Guten Morgen.
Du suchst die property ActionComponent der BasisAction. Mit meinem Code-Beispiel möchte ich dich auf die Fallstricke aufmerksam machen:
Delphi-Quellcode:
Grüße vom marabu
procedure TTestForm.TestActionExecute(Sender: TObject);
begin if not Assigned(Sender) then ShowMessage('triggered by shortcut') else if not (Sender is TAction) then ShowMessage('someone blew it') else with Sender as TAction do if Assigned(ActionComponent) then ShowMessage(ActionComponent.Name) else ShowMessage(Name); end; |
Re: Auslöser einer TAction auslesen
Vielen Dank,
das ist genau das, was ich gesucht habe. Ciao, sepp001 |
Re: Auslöser einer TAction auslesen
Hat sich erledigt.
Ciao, sepp001 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:53 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 by Thomas Breitkreuz