Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Form sämtliche KeyDown/press-Ereignisse klauen (https://www.delphipraxis.net/173544-form-saemtliche-keydown-press-ereignisse-klauen.html)

BMI 1. Mär 2013 23:23


Form sämtliche KeyDown/press-Ereignisse klauen
 
Hier hat zwar einer einen ähnlichen Ansatz gefragt, aber die aus meiner Sicht immer noch ne noch nicht ganz treffende (obwohl vermutlich weiterhelfende) Antwort, erhalten.
http://www.delphipraxis.net/53126-ke...focus-hat.html

Hallo erstmal,

also, ich hab ne Form und verschiedene Komponenten darauf.
Labels, Button, Image, Shape, Checkboxen, usw.

und jetzt möchte ich aber, daß egal, welche der o.g. gerade den Focus hat, daß bestimmte Tasten ausgewertet werden.
Jetzt aber nicht nur , a,b,c, d...0,1,2,3... sondern auch VK_down, PageDown, etc.

Also prinzipiell bräuchte ich je Komponente ne Auswertung in der KeyDown-Ereignis-Function.
Die andern kompo's sollen aber dadurch nicht ihren Focus verlieren.

Auswerten möchte ich aber eigentlich nur in Form1.keydown() If key = VK_up then ... If key = VK_down then bla.
und das aber nicht 20 mal in den andern Kompo's eintragen.

Keypreview bringt da auch nur bei den Buchstaben/zahlen was.

Hotkey, oder gar Hooks, für ca. 15-20 Tastaturbefehle einzurichten halte ich allerdings für etwas übertrieben.
und auch nicht gerade hübsch.


Also einfach nur in Form1.keyDown auswerten.



Versteht Ihr, was ich meine?


Ich hab nicht mal ne Richedit, Memo oder Edit Kompo auf der Form, welche mir z.B. Pfeilauf/ab, TAB oder so klauen könnte.
Also eigentlich ganz simpel.
Aber irgendwie erschloß sich mir bis gerade keine Lösung.

Ich hab schon gegoogled aber nur so einige komische Funde wie msg.key () auswerten und solche selbstgebastelten Sachen gefunden.
Ist aber nicht, das was ich brauche.

Bei mir soll das - sagen wir so .. wie bei nem Spiel sein.
Tastendrücken "auf dem Bildschirm" und Reaktion.


Vielleicht sieht da ja jemand mehr Licht ...
Ich würde mich freuen, wenn man mir (und andren das gleiche Suchenden das mitteilen könnte.

Danke.

Edit: Handelt sich um Delphi 7 (dürfte aber auch mit jedem andern gehen)
Win7, 32 bit

Sir Rufo 2. Mär 2013 01:07

AW: Form sämtliche KeyDown/press-Ereignisse klauen
 
Diese "selbstgebastelten Sachen" nennt man auch Programmierung (so nebenbei bemerkt)

Furtbichler 2. Mär 2013 08:54

AW: Form sämtliche KeyDown/press-Ereignisse klauen
 
Ich würde es mit TApplicationEvents probieren (falls Du unbedingt eine Komponente haben willst). Aber selber basteln muss man da auch.


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