Einzelnen Beitrag anzeigen

TUX_der_Pinguin

Registriert seit: 1. Jun 2005
Ort: Anholt (NRW)
608 Beiträge
 
Delphi 11 Alexandria
 
#1

Pfeiltasten auf einem Form abfangen

  Alt 25. Feb 2014, 15:12
Hallo,

ich habe ein Formular und möchte das egal welche Komponente (TEdit, TCheckBox etc) den Focus hat zentral auf das Drücken der Pfeiltasten reagiert wird.

Ich habe eine kleine Test Anwendung erstellt, dazu habe ich auf dem Formular ein Eingabefeld (TEdit) und eine GroupBox plaziert in der GroupBox befinden
sich zwei CheckBoxen. Dann habe ich im Objekt Inspektor des Formulars KeyPreView auf 'True' gestellt und das Ereignis OnKeyDown des Formulars erstellt.
In dem Ereignis wird dann entsprechend auf die Pfeiltasten hin geprüft und entsprechend reagiert.

Starte ich nun die Anwendung und drücke eine der Pfeiltasten, der Foucs liegt auf dem Eingabefeld, so wird entsprechend der Pfeiltaste die Anweisungen
ausgeführt. Klicke ich jedoch eine der Checkboxen an und drücke dann eine der Pfeiltasten dann springt der Focus nur noch hin und her zwischen den
CheckBoxen und das Ereignis OnKeyDown des Formulars reagiert nicht mehr darauf.

Es muss doch eine Möglichkeit geben zu verhindern das die jeweiligen Komponenten auf die Pfeiltasten reagieren sondern nur das das OnKeyDown Ereignis des Formulars.
Bzw. irgendeine zentrale Routine in der auf die jeweiligen Pfeiltasten reagiert werden kann.

Mfg ein Verzweifelter
  Mit Zitat antworten Zitat