Partilhar via


Aceleradores de teclado

Um acelerador de teclado (ou, simplesmente, acelerador) é um pressionamento de tecla ou combinação de pressionamentos de teclas que gera uma mensagem WM_COMMAND ou WM_SYSCOMMAND para um aplicativo.

Nesta secção

Designação Descrição
Sobre os aceleradores de teclado Discute aceleradores de teclado.
Usando aceleradores de teclado Discute tarefas associadas a aceleradores de teclado.
de referência do acelerador de teclado Contém a referência da API.

Funções do acelerador de teclado

Designação Descrição
CopyAcceleratorTable Copia a tabela de aceleração especificada. Esta função é usada para obter os dados da tabela aceleradora que correspondem a um identificador da tabela aceleradora ou para determinar o tamanho dos dados da tabela aceleradora.
CreateAcceleratorTable Cria uma tabela aceleradora.
DestroyAcceleratorTable Destrói uma mesa de aceleração.
LoadAccelerators Carrega a tabela de aceleração especificada.
TranslateAccelerator Processa teclas aceleradoras para comandos de menu. A função traduz uma mensagem WM_KEYDOWN ou WM_SYSKEYDOWN para uma mensagem WM_COMMAND ou WM_SYSCOMMAND (se houver uma entrada para a chave na tabela aceleradora especificada) e, em seguida, envia a mensagem WM_COMMAND ou WM_SYSCOMMAND diretamente para o procedimento de janela especificado. TranslateAccelerator não retorna até que o procedimento da janela tenha processado a mensagem.

Mensagens do acelerador de teclado

Designação Descrição
WM_CHANGEUISTATE Enviado para indicar que o estado da interface do usuário deve ser alterado.
WM_INITMENU Enviado quando um menu está prestes a ficar ativo. Ocorre quando o usuário clica em um item na barra de menus ou pressiona uma tecla de menu. Isso permite que o aplicativo modifique o menu antes que ele seja exibido.
Uma janela recebe esta mensagem através da sua função WindowProc.
WM_QUERYUISTATE Enviado para recuperar o estado da interface do usuário de uma janela.
WM_UPDATEUISTATE Enviado para alterar o estado da interface do usuário para a janela especificada e todas as janelas filhas.

Notificações do Acelerador de Teclado

Designação Descrição
WM_INITMENUPOPUP Enviado quando um menu suspenso ou submenu está prestes a ficar ativo. Isso permite que um aplicativo modifique o menu antes que ele seja exibido, sem alterar todo o menu.
WM_MENUCHAR Enviado quando um menu está ativo e o usuário pressiona uma tecla que não corresponde a nenhuma tecla mnemônica ou aceleradora. Esta mensagem é enviada para a janela que possui o menu.
WM_MENUSELECT Enviado para a janela do proprietário de um menu quando o usuário seleciona um item de menu.
WM_SYSCHAR Postado na janela com o foco do teclado quando uma mensagem WM_SYSKEYDOWN é traduzida pela funçãoTranslateMessage. Ele especifica o código de caractere de uma chave de caractere do sistema, ou seja, uma tecla de caractere que é pressionada enquanto a tecla ALT está inativa.
WM_SYSCOMMAND Uma janela recebe essa mensagem quando o usuário escolhe um comando no menu Janela ou quando o usuário escolhe o botão maximizar, minimizar botão, restaurar ou fechar.

Estruturas do acelerador de teclado

Designação Descrição
ACCEL Define uma chave aceleradora usada em uma tabela aceleradora.