WM_DEADCHAR mensaje
Se publica en la ventana con el foco del teclado cuando la función TranslateMessage traduce un mensaje de WM_KEYUP. WM_DEADCHAR especifica un código de carácter generado por una tecla inactiva. Una tecla inactiva es una tecla que genera un carácter, como el umlaut (punto doble), que se combina con otro carácter para formar un carácter compuesto. Por ejemplo, el carácter umlaut-O ( ) se genera escribiendo la tecla inactiva para el carácter umlaut y después escribiendo la tecla O.
#define WM_DEADCHAR 0x0103
-
wParam
-
Código de carácter generado por la tecla inactiva.
-
lParam
-
El recuento de repeticiones, el código de examen, la marca de clave extendida, el código de contexto, la marca de estado de clave anterior y la marca de estado de transición, como se muestra en la tabla siguiente.
Bits Significado 0-15 Número de repeticiones para el mensaje actual. El valor es el número de veces que se repite la pulsación de tecla como resultado de que el usuario mantenga presionada la tecla. Si la tecla se mantiene presionada durante un tiempo suficiente, se envían varios mensajes. Sin embargo, el recuento de repeticiones no es acumulativo. 16-23 Código de examen. El valor depende del OEM. 24 Indica si la tecla es una tecla extendida, como las teclas ALT y CTRL de la derecha que aparecen en un teclado mejorado de 101 o 102 teclas. El valor es 1 si es una tecla extendida; de lo contrario, es 0. 25-28 Reservados; no use. 29 Código de contexto. El valor es 1 si la tecla ALT se mantiene presionada mientras se presiona la tecla; de lo contrario, el valor es 0. 30 Estado de clave anterior. El valor es 1 si la tecla está presionada antes de que se envíe el mensaje, o es 0 si la tecla no está presionada. 31 Estado de transición. El valor es 1 si se está liberando la tecla, o 0 si se está presionando la tecla. Para obtener más información, consulte Marcas de mensaje de pulsación de teclas.
Una aplicación debe devolver cero si procesa este mensaje.
Las aplicaciones suelen usar el mensaje WM_DEADCHAR para proporcionar comentarios al usuario sobre cada tecla presionada. Por ejemplo, una aplicación puede mostrar el acento en la posición del carácter actual sin mover el cursor de inserción.
Dado que no hay necesariamente una correspondencia uno a uno entre las teclas presionadas y los mensajes de caracteres generados, la información de la palabra de orden superior del parámetro lParam generalmente no es útil para las aplicaciones. La información de la palabra de orden superior solo se aplica al mensaje de WM_KEYDOWN más reciente que precede a la publicación del mensaje de WM_DEADCHAR .
Para teclados mejorados de 101 y 102 teclas, las teclas extendidas son la alt derecha y las teclas CTRL derechas en la sección principal del teclado; las teclas INS, DEL, HOME, END, PAGE UP, PAGE DOWN y arrow en los clústeres a la izquierda del teclado numérico; y las teclas dividir (/) y ENTRAR en el teclado numérico. Algunos otros teclados pueden admitir el bit de tecla extendida en el parámetro lParam .
Requisito | Value |
---|---|
Cliente mínimo compatible |
Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible |
Windows 2000 Server [solo aplicaciones de escritorio] |
Encabezado |
|