Partilhar via


CWnd::OnSysKeyDown

Se o CWnd objeto tem o foco de entrada, o OnSysKeyDown função de membro é chamada pela estrutura quando o usuário mantém pressionada a tecla ALT e, em seguida, pressionar outra tecla.

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

Parâmetros

  • nChar
    Especifica o código de chave virtual da chave que está sendo pressionado.Para obter uma lista de códigos de chave virtual padrão, consulte WinUser.h

  • nRepCnt
    Especifica a contagem de Repetir.

  • nFlags
    Especifica o código de varredura, código de chave de transição, estado-chave anterior e contexto de código, conforme mostrado na lista a seguir:

    Valor

    Significado

    0–7

    Examine o código (valor dependente de OEM).Byte baixo da palavra de ordem superior.

    8

    Chave estendida, sistema autônomo uma tecla de função ou uma tecla no teclado numérico (1 se for uma chave estendida; caso contrário, 0).

    9–10

    Não usado.

    11–12

    Usado internamente pelo Windows.

    13

    Contexto de código (1 se o tecla ALT for mantida pressionada enquanto a tecla é pressionada, 0 caso contrário).

    14

    Estado-chave anterior (1 se a tecla for pressionada antes que a mensagem seja enviada, 0 se a chave for backup).

    15

    Fazer a transição de estado (1 se a chave está sendo lançada, 0 se a chave está sendo pressionada).

    For OnSysKeyDown chamadas, o bit de transição de chave (15 bits) é 0. O código do contexto de bit (bit 13) será 1 se o tecla ALT é pressionada enquanto a tecla é pressionada; é 0 se a mensagem é enviada para a janela ativo porque nenhuma janela tem o foco de entrada.

Comentários

Se nenhuma janela tem o foco de entrada OnSysKeyDown função de membro é chamada. The CWnd objeto que recebe a mensagem pode distinguir entre esses dois contextos verificando o contexto de código nFlags.

Quando o código do contexto é 0, a WM_SYSKEYDOWN mensagem recebida pelo OnSysKeyDown pode ser passado para o TranslateAccelerator Função do Windows, que irá lidar com ele sistema autônomo se fosse uma mensagem de chave normal em vez de uma mensagem de chave do sistema.Isso permite que as teclas de aceleração ser usado com a janela ativo, mesmo se a janela ativo não tiver o foco de entrada.

Por causa de auto-Repetir, mais de um OnSysKeyDown telefonar pode ocorrer antes do WM_SYSKEYUP mensagem é recebida.O estado da chave anterior (14 bit) pode ser usado para determinar se o OnSysKeyDown telefonar indica a transição primeiro down ou um repetidamente para baixo de transição.

Para IBM avançado 101 e 102-chaves teclados, avançado chaves são ALT direita e as teclas CTRL direita na seção principal do teclado; a INS, DEL, residência, participante, página UP, página DOWN e teclas de seta em clusters à esquerda do teclado numérico; e barra / / (/) e chaves ENTER no teclado numérico.Alguns outros teclados podem suportar o bit de chave estendida em nFlags.

Observação:

Essa função de membro é chamada pela estrutura para permitir que seu aplicativo manipular uma mensagem do Windows.Os parâmetros passados para sua função refletem os parâmetros recebidos pela estrutura quando a mensagem foi recebida.Se você chamar a implementação da classe base ementation dessa função, essa implementação usará os parâmetros passados originalmente com a mensagem e não os parâmetros que você fornecer para a função.

Requisitos

Cabeçalho: afxwin.h

Consulte também

Referência

Classe CWnd

Gráfico de hierarquia

TranslateAccelerator

CWnd::OnSysKeyUp

WM_SYSKEYDOWN

Outros recursos

Membros CWnd