CWnd::OnSysKeyUp

Wenn das Objekt CWnd den Fokus besitzt, wird die OnSysKeyUp-Memberfunktion vom Framework aufgerufen, wenn der Benutzer eine Taste loslässt, die gedrückt wurde, während die ALT-TASTE gedrückt gehalten wurde.

afx_msg void OnSysKeyUp(
   UINT nChar,
   UINT nRepCnt,
   UINT nFlags 
);

Parameter

  • nChar
    Gibt den virtuellen Tastencode der Schlüssel an, die gedrückt wird.Eine Liste der Standardvirtuellen tastencodes, finden Sie Winuser.h

  • nRepCnt
    Gibt die Wiederholzahl an.

  • nFlags
    Gibt den Überprüfungscode, den Tastenzustand, den vorherigen Tastenzustand und den Kontextcode, wie in der folgenden Liste dargestellt:

    Wert

    Bedeutung

    0–7

    Überprüfungscode (Wert des OEM-abhängigen Elements).Niederwertiges Byte höherwertigen des Wortes.

    8

    Erweiterte Schlüssel, wie eine Funktionstaste oder Schlüssels auf der Zehnertastatur (1, wenn eine erweiterte Schlüssel ist; 0 andernfalls).

    9–10

    Wird nicht verwendet.

    11–12

    Intern verwendet von Windows.

    13

    Kontextcode (1, wenn die ALT-TASTE gedrückt gehalten wird, während die Taste gedrückt wird; andernfalls 0).

    14

    Vorheriger Tastenzustand (1, wenn der Schlüssel unten ist, bevor die Meldung gesendet wird, 0, wenn der Schlüssel oben ist).

    15

    Übergangszustand (1, wenn der Schlüssel freigegeben wird, 0, wenn die Taste gedrückt wird).

    Für OnSysKeyUp Aufrufe ist das TasteÜbergang Bit (ein Bit 15) 1.Das KontextCode Bit (13 Bits) ist 1, wenn die ALT-TASTE gedrückt ist, während die Taste gedrückt wird, Es ist 0, wenn die Meldung an das aktive Fenster gesendet wird, da kein Fenster den Eingabefokus hat.

Hinweise

Wenn kein Fenster gerade den Eingabefokus hat, wird die OnSysKeyUp-Memberfunktion des aktiven Fensters aufgerufen.Das CWnd-Objekt, das den Aufruf empfängt, kann zwischen diesen beiden Kontexten unterscheiden, indem Sie den Kontextcode in nFlags überprüft.

Wenn der Kontextcode 0 ist, kann die WM_SYSKEYUP Meldung, die von OnSysKeyUp empfangen wird, zur TranslateAccelerator Windows-Funktion übergeben werden, die sie behandelt, als ob es eine normale Tastenmeldung anstelle einer SystemTaste Meldung war.Dies ermöglicht die dem aktiven Fenster verwendet werden Schlüssel der Zugriffstaste (Kontextmenü), selbst wenn das aktive Fenster nicht den Eingabefokus hat.

Bei IBM erhöht 101 - und 102 Schlüsseltastaturen, verbesserte Schlüssel sind rechte ALT und rechten STRG-TASTE auf dem Abschnitt der Tastatur; INS, ENTF, POS1, ENDE, BILD-AUF, BILD-AB und Pfeiltasten in Clustern auf der linken Seite der Zehnertastatur; und der Schrägstrich (/) und EINGABETASTE in der Zehnertastatur.Einige andere Tastaturen unterstützen möglicherweise die erweiterte Schlüssel, die in nFlags ein Bit verwendet wird.

Für NichtUS,.. die 102 Schlüsseltastaturen verbessert werden, wird die Berechtigung ALT-TASTE als die STRG+ALT-Tastenkombination behandelt.Im Folgenden wird die Reihenfolge der Meldungen und Aufrufe, die sich ergeben, wenn der Benutzer die Tastenkombination drückt und -Versionen dieser Schlüssel:

Sequence

Funktion zugegriffen

Meldung übergeben

1.

WM_KEYDOWN

VK_CONTROL

2.

WM_KEYDOWN

VK_MENU

3.

WM_KEYUP

VK_CONTROL

4.

WM_SYSKEYUP

VK_MENU

HinweisHinweis

Diese Memberfunktion wird vom Framework aufgerufen, um die Anwendung zu ermöglichen, eine Windows-Meldung zu bearbeiten.Die Parameter, die an die Funktion übergeben werden, geben die Parameter, die vom Framework empfangen werden, als die Nachricht empfangen wurde.Wenn Sie die Basisklassenimplementierung dieser Funktion aufrufen, verwendet diese Implementierung die Parameter, die mit der Meldung übergeben werden und nicht die Parameter, die an die Funktion bereitstellen.

Anforderungen

Header: afxwin.h

Siehe auch

Referenz

CWnd-Klasse

Hierarchien-Diagramm

TranslateAccelerator

CWnd::OnSysKeyDown

WM_SYSKEYUP