Vcl.Controls.TWinControl.OnKeyDown

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

property OnKeyDown: TKeyEvent read FOnKeyDown write FOnKeyDown;

C++

__property TKeyEvent OnKeyDown = {read=FOnKeyDown, write=FOnKeyDown};

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
event protected
Vcl.Controls.pas
Vcl.Controls.hpp
Vcl.Controls TWinControl

Beschreibung

Tritt auf, wenn der Benutzer eine Taste drückt, während das Steuerelement den Fokus hat.

Verwenden Sie die Ereignisbehandlungsroutine für OnKeyDown, um eine bestimmte Aktion als Reaktion auf das Druckrn einer einzelnen Taste auszuführen. Die Ereignisbehandlungsroutine für OnKeyDown kann sowohl auf Tastaturtasten, einschließlich Funktionstasten und Kombinationen der Tasten mit UMSCHALT, Alt und STRG, als auch auf gedrückte Maustasten antworten.

Hinweis: TCheckBox löst keine OnKeyDown-Ereignisse für Pfeiltasten aus.

OnKeyDown ist eine Ereignisbehandlungsroutine des Typs Vcl.Controls.TKeyEvent. Unter TKeyEvent finden Sie eine Beschreibung der Parameter.

Eine Anwendung erhält Windows-WM_KEYDOWN-Botschaften für alle Tasten, wenn der Benutzer eine Taste drückt. Diese Botschaften lösen das OnKeyDown-Ereignis indirekt aus. Wenn Sie den Parameter Key auf #0 setzen, wird die weitere Verarbeitung dieser Botschaft verhindert. Für Tasten, die Zeichen repräsentieren, erzeugt Windows auch WM_CHAR-Botschaften. Zum Zeitpunkt, wenn Ihr OnKeyDown-Ereignis ausgelöst wird, befindet sich die WM_CHAR-Botschaft für die Taste bereits in der Botschaftswarteschlange. Das Setzen von Key auf #0 stoppt die Botschaft nicht, daher wird das OnKeyPress-Ereignis ausgelöst. Wenn Sie Key auf #0 setzen, wird OnKeyPress nur von den Tasten, die Zeichen haben, ausgelöst. Für Tasten, die Zeichen repräsentieren, wird OnKeyPress immer noch ausgelöst.

Diese Art des Organisierens von Tastenverarbeitungen ist vorteilhaft. Quelltext, der sich nur mit Zeichen befasst (einschließlich Steuerungszeichen wie z.B. #13 für Wagenrücklaufzeichen, #3 für STRG-C usw.), soll in das OnKeyPress-Ereignis aufgenommen werden. Quelltext, der sich mit Tasten befasst, die keine Zeichen erzeugen, soll in das Ereignis OnKeyDown aufgenommen werden.

Siehe auch

Codebeispiele