![]() |
AltGr-A in einem Eingabefeld TdxBarEdit
Ich möchte, wenn der Focus auf dem Eingabefeld "Suchen" liegt und dort AltGr-A getippt wird, eine Suche nach einer Adresse starten.
Ich bekomme zwar AltGr mit, nicht aber die folgende Taste z.B. das "A" bei gedrückter AltGr Taste. So siehts in etwa aus:
Delphi-Quellcode:
Wie man sieht, kein a
procedure TWV.SuchenKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin busy; MyDebug('SuchenKeyDown = ' + intToStr(key)); if (ssCtrl in Shift) then MyDebug('SuchenKeyDown = Ctrl'); if (ssAlt in Shift) then MyDebug('SuchenKeyDown = Alt'); if GetAsyncKeyState(VK_RMENU) < 0 then MyDebug('SuchenKeyDown = AltGr'); if (GetAsyncKeyState(VK_RMENU) < 0) and (key > 31) then begin MyDebug('SuchenKeyDown AltGr-' + chr(key) + ' = ' + intToStr(key)); if Key = ord('A') then begin Key := 0; SuchenAdresseClick(Sender); end; end; idle; end; [732] myDebug SuchenKeyDown = 17 [732] myDebug SuchenKeyDown = Ctrl [732] myDebug SuchenKeyDown = AltGr Was kann man tun? Gruß Uwe |
AW: AltGr-A in einem Eingabefeld TdxBarEdit
Delphi-Quellcode:
if (Key = ord('A')) and (ssctrl in shift) and (ssAlt in Shift) then .....
|
AW: AltGr-A in einem Eingabefeld TdxBarEdit
Warum nimmst du nicht eine ActionList, erzeugst eine neue Action und setzt den Shortcut auf Strg+Alt+A?
Dazu braucht es doch keinen komplizierten Code, den du in einigen Monaten eh nicht mehr verstehst. |
AW: AltGr-A in einem Eingabefeld TdxBarEdit
Schon mal Danke für die Tips.
zu Tip 1. Wenn ich bei Key eine 17 (myDebug SuchenKeyDown = 17) zurückbekomme,
Delphi-Quellcode:
.
MyDebug('SuchenKeyDown = ' + intToStr(key));
wird ein Vergleich
Delphi-Quellcode:
.
if (Key = ord('A')) ...
wohl auch nichts bringen, weil IMO das A = chr(65) ist. zu Tip 2. Das mit der Action werde ich mir merken, guter Tip. Aber Strg-Alt+A ist schon als Hotkey im Menü definiert und funktioniert auch überall im Formular. Nur wenn das Eingabefeld "Suchen" den Focus hat, leider nicht. Es sieht so aus, als würde es schon vorher in der Komponente abgefangen, vielleicht für Strg-A "alles markieren" o.ä. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:44 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