WM_SYSKEYDOWN

Die WM_SYSKEYDOWN-Meldung wird an das Fenster mit dem Tastaturfokus gebucht, wenn der Benutzer die Taste F10 drückt (wodurch die Menüleiste aktiviert wird) oder hält sich die Alt-Taste und dann eine andere Taste drückt. Es tritt auch auf, wenn kein Fenster derzeit über den Tastaturfokus besitzt; in diesem Fall wird die WM_SYSKEYDOWN-Meldung an das aktive Fenster gesendet. Das Fenster, das die Nachricht empfängt, kann diese beiden Kontexte durch Überprüfen des Kontext-Codes im lKeyData -Parameter unterscheiden.

WM_SYSKEYDOWN nVirtKey = (Int) wParam;    / / virtual-Key code lKeyData = lParam;          / / Eckdaten 

 

Parameter

nVirtKey
Der wParam-Wert. Gibt den virtuelle Tastencode der gedrückten.
lKeyData
Wert des lParam. Gibt die Anzahl von Wiederholungen, Scan-Code, verlängert-Schlüssel Flagge, Kontext Code, vorherige Schlüssel-Flagge, und Übergangszustand Flag, wie in der folgenden Tabelle gezeigt.
Wert Beschreibung
0–15 Gibt die Anzahl von Wiederholungen für die aktuelle Meldung. Der Wert ist die Anzahl der Male, die der Tastenanschlag Auto-wiederholt als einer der Benutzer die Taste gedrückt ist. Wenn die Tastatureingabe lang genug gehalten wird, sind mehrere Nachrichten gesendet. Allerdings ist die Anzahl von Wiederholungen nicht kumulativ.
16.-23 Gibt den Scancode. Der Wert hängt von der Original Equipment Manufacturer (OEM).
24 Gibt an, ob der Schlüssel ist eine erweiterte Schlüssel, wie die rechten Alt und STRG-Tasten, die auf eine verbesserte 101 oder 102-Tasten-Tastatur angezeigt werden. Der Wert ist 1, wenn es eine längere Schlüssel ist; Andernfalls ist der Wert 0.
Blei Vorbehalten; Verwenden Sie keine.
29 Gibt den Kontext Code. Der Wert ist 1, wenn die ALT-Taste gedrückt ist, während die Taste gedrückt wird; Es ist 0, wenn die WM_SYSKEYDOWN-Meldung an das aktive Fenster gebucht wird, weil kein Fenster den Tastaturfokus besitzt.
30 Gibt den vorherigen Schlüssel Zustand. Der Wert ist 1, wenn die Taste gedrückt ist, bevor die Nachricht gesendet wird, oder es 0, ist wenn der Schlüssel bis.
31 Gibt den Übergangszustand. Der Wert ist immer 0 für eine Nachricht WM_SYSKEYDOWN.

Rückgabewerte

Eine Anwendung sollte 0 zurückgeben, wenn es diese Nachricht verarbeitet.

Standard-Aktion

Die DefWindowProc -Funktion den angegebenen Schlüssel überprüft und eine WM_SYSCOMMAND -Meldung generiert, wenn der Schlüssel entweder Registerkarte oder eingeben.

Bemerkungen

Wenn der Kontext-Code 0 (null) ist, kann die Nachricht der TranslateAccelerator -Funktion, die es behandelt, als wäre es eine normale Tastenmeldung statt einer Zeichentaste Nachricht übergeben werden. Auf diese Weise können Zugriffstasten im aktiven Fenster verwendet werden, auch wenn das aktive Fenster nicht über den Tastaturfokus verfügt.

Durch automatisches wiederholen kann mehr als eine Nachricht WM_SYSKEYDOWN eintreten, bevor eine WM_SYSKEYUP-Nachricht gesendet wird. Der vorherige Schlüssel Zustand (Bit 30) kann verwendet werden, um festzustellen, ob die Nachricht WM_SYSKEYDOWN, den ersten Down-Übergang oder einen wiederholten unten Übergang angibt.

Erweiterte Schlüssel sind für erweiterte 101 und 102-Tasten-Tastaturen die recht Alt und STRG-Tasten auf den Hauptteil der Tastatur; die ins, del, Start, Ende, Seite nach oben, Seite nach unten und Pfeiltasten in den Clustern links neben dem Ziffernblock; der Graben (/) und Schlüssel in der Zehnertastatur eingeben. Anderen Tastaturen unterstützen möglicherweise das Bit erweitert-Schlüssel in den lParam -parameter.

Diese Meldung wird auch gesendet, wenn der Benutzer die F10 Schlüssel ohne die ALT-Taste drückt.

QuickInfo

&Nbsp; Windows NT: Version 3.1 oder höher erforderlich.
Windows:Erfordert Windows 95 oder höher.
Windows CE:Version 1.0 oder höher benötigt.
Header:In winuser.h deklarierten.

Siehe auch

Übersicht über die Tastatur-Eingabe, Keyboard Input Nachrichten, DefWindowProc, TranslateAccelerator, WM_SYSCOMMAND, WM_SYSKEYUP

Index