afx_msgprivatevoidOnSysKeyDown (nFlagsUINTnChar,UINTnRepCnt,UINT);
Parameter
nChar
Gibt den virtuelle Tastencode der gedrückten.
nRepCnt
Gibt die Anzahl von Wiederholungen.
nFlags
Gibt die Scan-Code, Code-Schlüssel-Übergang, vorherige KeyState und Kontext Code, wie in der folgenden Liste gezeigt:
| Wert | Bedeutung |
| korrespondieren | Scan Code (OEM-abhängige Wert). Low-Byte des höherwertigen Wortes. |
| 8 | Längere Schlüssel, z. B. eine Funktionstaste oder eine Taste auf der Zehnertastatur (1 ist es eine erweiterte Schlüssel; andernfalls 0). |
| 9-10 | Nicht verwendet. |
| 11 – 12 | Intern verwendet von Windows. |
| 13 | Kontext-Code (1, wenn die ALT-Taste gedrückt gehalten wird, während die Taste gedrückt ist, andernfalls 0). |
| 14 | Vorherigen Schlüssel Zustand (wenn die Taste gedrückt ist, bevor die Nachricht wird gesendet, 0 Wenn der Schlüssel bis 1). |
| 15 | Übergangszustand (1, wenn die Taste freigegeben wird, 0, wenn die Taste gedrückt wird). |
Für OnSysKeyDown Anrufe ist der Schlüssel-Übergang Bit (Bit 15) 0. Das Kontext-Code Bit (Bit 13) ist 1, wenn die ALT-Taste gedrückt ist, während die Taste gedrückt wird; Es ist 0, wenn die Nachricht an das aktive Fenster gesendet wird, weil kein Fenster den Eingabefokus besitzt.
Bemerkungen
Wenn das CWnd -Objekt den Eingabefokus besitzt, wird die OnSysKeyDown -Memberfunktion vom Framework aufgerufen, wenn der Benutzer die ALT-Taste gedrückt hält und dann eine andere Taste drückt. Wenn kein Fenster derzeit den Eingabefokus besitzt, ist das aktive Fenster OnSysKeyDown -Memberfunktion aufgerufen. Das CWnd -Objekt, das die Nachricht empfängt, kann diese beiden Kontexte durch Überprüfen des Kontext Codes in nFlags unterscheiden.
Wenn der Kontext-Code 0 ist, die WM_SYSKEYDOWN -Meldung von OnSysKeyDown übergeben werden kann die TranslateAccelerator Windows-Funktion, die es behandelt, als wäre es eine normale Tastenmeldung anstelle von einer System-Key-Nachricht. Auf diese Weise können Zugriffstasten im aktiven Fenster verwendet werden, auch wenn das aktive Fenster den Eingabefokus besitzt keinen.
Wegen der Auto-Repeat kann mehr als einen OnSysKeyDown -Aufruf erfolgen, bevor die WM_SYSKEYUP -Nachricht empfangen wird. Der vorherige Schlüssel Zustand (Bit 14) kann verwendet werden, um festzustellen, ob der OnSysKeyDown -Aufruf den ersten Down-Übergang oder einen wiederholten sich Übergang gibt.
Für IBM erweiterte 101 und 102-Tasten Tastaturen sind erweiterte Tasten Recht ALT und der rechten STRG-Taste auf den Hauptteil der Tastatur; die INS, DEL, HOME, Ende, Seite oben, Seite unten und Pfeiltasten in den Clustern links neben dem Ziffernblock; und den Schrägstrich (/) und ENTER-Tasten in der numerischen Tastatur. Einige andere Tastaturen unterstützen möglicherweise das Bit erweitert-Schlüssel in nFlags.
Hinweis&Nbsp; Dieser Member-Funktion wird aufgerufen, durch den Rahmen für die Anwendung, eine Windows-Meldung zu behandeln zu können. An Ihre Funktion übergebenen Parameter entsprechen die Parametern von Rahmen empfangen, wenn die Nachricht empfangen wurde. Wenn Sie die Basisklasse Implementierung dieser Funktion aufrufen, wird diese Implementierung verwendet ursprünglich mit der Meldung und nicht die Parameter, die Sie angeben, an die Funktion übergebenen Parameter.
CWnd Übersicht |nbsp; Member der Klasse | Hierarchiediagramm
Siehe auch&Nbsp; :: TranslateAccelerator, WM_SYSKEYUP, WM_SYSKEYDOWN