Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi TActionList Shortcut, nur wenn Focus gesetzt ist (https://www.delphipraxis.net/115145-tactionlist-shortcut-nur-wenn-focus-gesetzt-ist.html)

Eppos 6. Jun 2008 18:28


TActionList Shortcut, nur wenn Focus gesetzt ist
 
Hallo zusammen,

ich habe in meiner Maske eine TActionList mit einem Shortcut "entf" fürs Löschen einer Position in meinem Grid.
Ich habe aber auch ein Eingabe Feld. Ist der Fokus nun in diesem Feld, wird trotzdem im Grid eine Position gelöscht,
ich möchte aber das dieses Shortcut nur für das Grid reagiert, und wenn der Fokus im Eingabe Feld steht,
ganz normal die Funktion der Entf Taste nutzen.

Wie kann ich das bewerkstelligen?

Vielen Dank!

shmia 6. Jun 2008 18:38

Re: TActionList Shortcut, nur wenn Focus gesetzt ist
 
Im Event [TEdit].OnEnter die Action abschalten und im Event [TEdit].OnExit die Action wieder anschalten.
Die Action kann über das Property Enabled an- und abgeschaltet werden.

Hawkeye219 6. Jun 2008 19:32

Re: TActionList Shortcut, nur wenn Focus gesetzt ist
 
Hallo Eppos,

du könntest auch die Action in der Behandlungsroutine für das Ereignis OnUpdate (de)aktivieren:

Delphi-Quellcode:
procedure TForm1.acDeleteLineUpdate(Sender: TObject);
begin
  TAction(Sender).Enabled := Grid.Focused;     // nur wenn das Grid den Fokus besitzt
{alternativ:
  TAction(Sender).Enabled := not Edit.Focused; // nur wenn das Edit den Fokus NICHT besitzt
}
end;
Gruß Hawkeye


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:15 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