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