WM_UNICHAR mensagem
A mensagem WM_UNICHAR pode ser usada por um aplicativo para postar a entrada em outras janelas. Esta mensagem contém o código de caractere da tecla que foi pressionada. (Teste se um aplicativo de destino pode processar mensagens WM_UNICHAR enviando a mensagem com wParam definido como UNICODE_NOCHAR.)
#define WM_UNICHAR 0x0109
Parâmetros
-
wParam
-
O código de caractere da chave.
Se wParam for UNICODE_NOCHAR e o aplicativo processar essa mensagem, retorne TRUE. A função DefWindowProc retornará FALSE (o padrão).
Se wParam não for UNICODE_NOCHAR, retorne FALSE. O Unicode DefWindowProc posta uma mensagem WM_CHAR com os mesmos parâmetros e a função ANSI DefWindowProc posta uma ou duas mensagens WM_CHAR com os caracteres ANSI correspondentes.
-
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 alt à direita e teclas CTRL 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_UNICHAR é semelhante a WM_CHAR, mas usa o FORMATO de Transformação Unicode (UTF)-32, enquanto WM_CHAR usa UTF-16.
Essa mensagem foi projetada para enviar ou postar caracteres Unicode para janelas ANSI e pode manipular caracteres de plano suplementar Unicode.
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 de WM_UNICHAR .
Para teclados avançados de 101 e 102 teclas, as teclas estendidas são 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 XP [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte |
Windows Server 2003 [somente aplicativos da área de trabalho] |
Cabeçalho |
|