![]() |
JEDEN tastendruck registrieren
hallo
unzwar wüsst ich gern wie ich JEDEN tastendruck speicher... bzw dessen nummer oder so in ein editfeld.. also keypreview hab ich true und bisher den code bei onkeypress so:
Delphi-Quellcode:
..nur die f-tasten gehen damit zum beispiel nicht und auch andere kombinationen wie strg-a o.ä.
edit1.Text:=inttostr(ord(Key));
..also ich will das ganze irgendwie als eine aktion aufnehmen.. damit ich es später wieder zurücksimulieren kann. mfg Timi-loader |
Re: JEDEN tastendruck registrieren
Versuch mal OnKeyDown ;)
|
Re: JEDEN tastendruck registrieren
...und da steht in Key ein
![]() |
Re: JEDEN tastendruck registrieren
aha ok.. also onkeydown macht schonmal mehr...thx
aber.. dummerweise macht das nur die aktuelle tasten.. also keine kombinationen.. da müsst ich ja dann irgendwie mir jede gedrückte taste merken und guggen bei onkeyup ob die schon wieder oben ist... oder gibts noch ne andere möglichkeit mit so strg-alt-buchstaben-kombinationen zu registrieren? EDIT: .. achso.. und wieso gehen tab und druck nicht? |
Re: JEDEN tastendruck registrieren
wegen alt+strg...schau dir mal den Parameter shift an...
Delphi-Quellcode:
HTH Frank
if (key=vk_return) and (shift = [ssCtrl,ssAlt]) then
showmessage('blah'); |
Re: JEDEN tastendruck registrieren
thx :)
.. also funktioniert soweit erstmal... nur tab und druck registriert er noch nicht.. hmz.. ..und windowskombinationen gehen ja auch nicht (weil windows kein shiftparameter ist).. das müsst ich dann irgendwie kompliziert anders machen... hmz... ..und eigendlich passts hier nicht mehr rein, aber wie kann ich die globale auswertung der keys dann stoppen?.. also will das event am besten im nichts verschwinden lassen.. da es ja nur zum registrieren in meinem programm dient.. |
Re: JEDEN tastendruck registrieren
Zitat:
Delphi-Quellcode:
Dies sagt weiteren Ereignissen, dass "keine" Taste gedrückt wurde.
Key := 0;
Jürgen |
Re: JEDEN tastendruck registrieren
Ich glaube nicht, dass das geht. Bei mir jedenfalls nicht. Funktioniert bei mir nur in OnKeyPress mit Key:=#0;
|
Re: JEDEN tastendruck registrieren
jo. das mit der 0 bringt nichts
|
Re: JEDEN tastendruck registrieren
Dann nimm OnKeyPress. In OnKeyDown wird das nicht gehen.
Wenn du F-Tasten unterdrücken willst, könntest du es mit TAppEvents (oder TApplicationEvents, weiß nicht mehr wie die hießen) probieren, in OnMessage. Wenn da ne WM_KEYDOWN reinkommt, dann überprüfst du, ob es die gesuchte Taste ist, und wenn ja machst du das, was du machen willst und setzt Handled auf True. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:14 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