WM_DEADCHAR mensagem

Postado na janela com o foco do teclado quando uma mensagem WM_KEYUP é traduzida pela função TranslateMessage . WM_DEADCHAR especifica um código de caractere gerado por uma chave morta. Uma chave morta é uma chave que gera um caractere, como o umlaut (ponto duplo), que é combinado com outro caractere para formar um caractere composto. Por exemplo, o caractere umlaut-O ( ) é gerado digitando a chave morta para o caractere umlaut e digitando a tecla O.

#define WM_DEADCHAR                     0x0103

Parâmetros

wParam

O código de caractere gerado pela chave morta.

lParam

A contagem de repetição, o código de verificação, o sinalizador de chave estendida, o código de contexto, o sinalizador de estado-chave anterior e o sinalizador de estado de transição, conforme mostrado na tabela a seguir.

Bits Significado
0-15 A contagem de repetição para a mensagem atual. O valor é o número de vezes que o pressionamento de tecla é repetido automaticamente como resultado do usuário que mantém a tecla pressionada. Se o pressionamento de teclas for mantido por tempo suficiente, várias mensagens serão enviadas. No entanto, a contagem de repetição não é cumulativa.
16-23 O código de verificação. O valor depende do OEM.
24 Indica se a tecla é uma tecla estendida, como as teclas ALT e CTRL à direita que aparecem em um teclado avançado de 101 ou 102 teclas. O valor será 1 se for uma tecla estendida; caso contrário, é 0.
25-28 Reservados; não use.
29 O código de contexto. O valor será 1 se a tecla ALT for mantida pressionada enquanto a tecla for pressionada; caso contrário, o valor será 0.
30 O estado da chave anterior. O valor será 1 se a tecla estiver pressionada antes do envio da mensagem, ou 0 se a tecla não estiver pressionada.
31 O estado de transição. O valor será 1 se a tecla estiver sendo liberada, ou 0 se a tecla estiver sendo pressionada.

Para obter mais detalhes, consulte Sinalizadores de mensagem de pressionamento de tecla.

Valor retornado

Um aplicativo deverá retornar zero se processar essa mensagem.

Comentários

A mensagem WM_DEADCHAR normalmente é usada por aplicativos para fornecer comentários ao usuário sobre cada tecla pressionada. Por exemplo, um aplicativo pode exibir a ênfase na posição atual do caractere sem mover o cursor.

Como não há necessariamente uma correspondência um-para-um entre as teclas pressionadas e as mensagens de caractere geradas, as informações na palavra de alta ordem do parâmetro lParam geralmente não são úteis para aplicativos. As informações na palavra de alta ordem se aplicam apenas à mensagem de WM_KEYDOWN mais recente que precede a postagem da mensagem WM_DEADCHAR .

Para teclados avançados de 101 e 102 teclas, as teclas estendidas são a ALT direita e as teclas CTRL direitas na seção main do teclado; as teclas INS, DEL, HOME, END, PAGE UP, PAGE DOWN e seta nos clusters à esquerda do teclado numérico; e as teclas DIVIDE (/) e ENTER no teclado numérico. Alguns outros teclados podem dar suporte ao bit de tecla estendida no parâmetro lParam .

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows 2000 Server [somente aplicativos da área de trabalho]
Cabeçalho
Winuser.h (inclua Windows.h)

Confira também