Compartir a través de


CWnd::OnSysKeyUp

Si el objeto de CWnd tiene el foco, la función miembro de OnSysKeyUp llaman el marco cuando el usuario suelta una tecla que se ha presionado mientras la tecla ALT se mantiene.

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

Parámetros

  • nChar
    Especifica el código de tecla virtual de clave que está presionado.Para obtener una lista de códigos de tecla virtual estándar, vea Winuser.h

  • nRepCnt
    Especifica el número de repeticiones.

  • nFlags
    Especifica el código de navegación, el código de la tecla-transición, el estado clave anterior, y el código del contexto, como se muestra en la siguiente lista:

    Valor

    Significado

    0–7

    Examinar código (valor OEM-dependiente).Byte en la palabra de alto nivel.

    8

    Clave extendida, como una clave de función o una clave en el teclado numérico (1 si es una tecla extendida; si no 0).

    9–10

    No se utiliza.

    11–12

    Se utiliza internamente por Windows.

    13

    Código de contexto (1 si se mantiene presionada la tecla ALT mientras se presiona la tecla, 0 de otro).

    14

    Estado de teclado anterior (1 si la clave está siguiente antes de que se envíe el mensaje, 0 si la clave está hacia arriba).

    15

    Estado de transición (1 si se lanzar la clave, 0 si se presionando la tecla).

    Para las llamadas de OnSysKeyUp , el bit de la tecla-transición (15 bits) es 1.El bit de contexto-código (13 bits) es 1 si la tecla ALT está presionado mientras se presiona la tecla; es 0 si el mensaje se envía a la ventana activa porque ninguna ventana tiene el foco de entrada.

Comentarios

Si ninguna ventana tiene actualmente el foco de entrada, se llama a la función miembro de OnSysKeyUp de la ventana activa.El objeto de CWnd que recibe la llamada puede diferenciar entre estos dos contextos comprobando el contexto codificado en nFlags.

Cuando el código de contexto es 0, el mensaje de WM_SYSKEYUP recibido por OnSysKeyUp se puede pasar a la función de TranslateAccelerator Windows, lo que administrará como si fuera un mensaje clave normal en lugar de un mensaje de la sistema-tecla.Esto permite que las teclas de aceleración (atajar) utiliza a la ventana activa aunque la ventana activa no tiene el foco de entrada.

Para IBM mejorada de 101 y 102 teclados clave, las teclas mejoradas son ALT derecha y CTRL correctas en la sección principal de teclado; INS, la DELETE, INICIO, FIN, RE PÁG, AV PÁG, y las teclas de dirección en clústeres a la izquierda del teclado numérico; y la barra diagonal (/) y teclas ENTRAR en el teclado numérico.Otros teclados pueden admitir el bit de la extender-tecla en nFlags.

Para 102 teclados clave mejoradas.. de fuera de EEUU, la tecla ALT correcta se utiliza como la combinación de teclas CTRL+ALT.Las escrituras siguientes la secuencia de mensajes y llamar a ese resultado cuando las imprentas y versiones de usuario esta clave:

secuencia

Función acceso

Último mensaje

1.

WM_KEYDOWN

VK_CONTROL

2.

WM_KEYDOWN

VK_MENU

3.

WM_KEYUP

VK_CONTROL

4.

WM_SYSKEYUP

VK_MENU

[!NOTA]

Esta función miembro llaman el marco para que la aplicación pueda controlar un mensaje de Windows.Los parámetros pasados a la función reflejan los parámetros recibidos por el marco cuando el mensaje se recibió.Si llama a la implementación de la clase base de esta función, esa implementación utilizará los parámetros pasados originalmente con el mensaje y no los parámetros que se proporciona a la función.

Requisitos

encabezado: afxwin.h

Vea también

Referencia

Clase de CWnd

Gráfico de jerarquía

TranslateAccelerator

CWnd::OnSysKeyDown

WM_SYSKEYUP