Udostępnij za pośrednictwem


CWnd::OnSysKeyUp

Jeśli CWnd obiekt ma fokus, OnSysKeyUp Członkowskich funkcja jest wywoływana przez ramy, gdy użytkownik zwalnia klucz, który został naciśnięty, podczas gdy został wciśnięty klawisz ALT.

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

Parametry

  • nChar
    Określa kod klucza wirtualnego klawiszem naciśniętym.Wykaz standardowych kodów klucza wirtualnego Zobacz pliku Winuser.h

  • nRepCnt
    Określa liczbę powtórzeń.

  • nFlags
    Określa kod skanowania, kod klucza przejścia, poprzedni stan klucza i kod w kontekście, jak pokazano na poniższej liście:

    Wartość

    Znaczenie

    0–7

    Skanowanie kodu (wartość zależna od producenta OEM).Bajcie znaczących programu word.

    8

    Rozszerzone klucza, na przykład klawisza funkcyjnego lub klawisz na klawiaturze numerycznej (1, jeśli klucz rozszerzony; inaczej 0).

    9–10

    Nie używany.

    11–12

    Używane wewnętrznie przez system Windows.

    13

    Kod kontekstu (1, jeśli klawisz ALT jest wciśnięty, podczas gdy jest naciśnięty, 0 w przeciwnym razie).

    14

    Poprzedni stan klucza (Jeśli klucz jest wyłączony, zanim wiadomość jest wysyłana, 0, jeśli klucz jest 1).

    15

    Przejście stanu (1, jeśli klucz jest zwalniany, 0, jeżeli jest naciśnięty).

    Dla OnSysKeyUp wywołania przejścia klucz bit (bit 15) jest 1.Kod w kontekście bit (bit 13) jest 1, jeśli klawisz ALT jest wyłączony, podczas gdy naciśnięty; Jeśli wiadomość jest wysyłana do aktywnego okna, ponieważ żadne okno nie ma fokus, jest 0.

Uwagi

Jeśli żadne okno nie ma aktualnie fokus, aktywne okno na OnSysKeyUp Członkowskich funkcja jest wywoływana.CWnd Obiekt, który odbiera wywołanie można rozróżnić tych dwóch kontekstów przez sprawdzanie kodu kontekstu nFlags.

Gdy kod kontekstu jest 0, WM_SYSKEYUP wiadomości odebrane przez OnSysKeyUp mogą być przekazywane do TranslateAccelerator funkcji systemu Windows, która będzie obsługiwał on, jakby był normalnej wiadomości klucza zamiast komunikatu klucza systemowego.Umożliwia to accelerator (skrót) kluczy używanych w aktywnym oknie, nawet jeśli aktywne okno ma fokus.

Rozszerzona IBM 101 i 102 klawisze klawiatury rozszerzone klucze są prawy ALT i prawo klawisze CTRL na głównych części klawiatury; INS, DEL, HOME, END, PAGE UP, PAGE DOWN i klawiszy strzałek w klastrach po lewej stronie numerycznej; i ukośnika (/), jak i klawisze ENTER w numerycznej.Inne układy klawiatury może obsługiwać bit klucz rozszerzony w nFlags.

Dla non-U.s. Enhanced 102 klawisze klawiatury, klucz prawym klawiszem ALT jest obsługiwany jako kombinacja klawiszy CTRL + ALT.Poniżej przedstawiono sekwencję wiadomości i wywołania, które powstają, gdy użytkownik naciska i zwalnia klucz ten:

Sekwencja

Dostęp do funkcji

Komunikat przekazany

1.

WM_KEYDOWN

VK_CONTROL

2.

WM_KEYDOWN

VK_MENU

3.

WM_KEYUP

VK_CONTROL

4.

WM_SYSKEYUP

VK_MENU

[!UWAGA]

Ta funkcja Członkowskich jest wywoływana przez RAM, aby umożliwić aplikacji do obsługi wiadomości dla systemu Windows.Parametry przekazywane do funkcji odzwierciedlać parametry otrzymanych w ramach, kiedy wiadomość została odebrana.Wywołanie jest klasa bazowa wykonania tej funkcji, że realizacja zostanie użyte parametry pierwotnie przekazywane wiadomości i nie podane parametry funkcji.

Wymagania

Nagłówek: afxwin.h

Zobacz też

Informacje

Klasa CWnd

Wykres hierarchii

TranslateAccelerator

CWnd::OnSysKeyDown

WM_SYSKEYUP