winuser.h

Mensaje WM_MENUCHAR

Definición

WM_MENUCHAR  
chUser = (char) LOWORD(wParam);  // carácte ASCII
fuFlag = (UINT) HIWORD(wParam);  // bandera de menú
hmenu = (HMENU) lParam;          // manipulador de menú

El mensaje WM_MENUCHAR se envía cuando un menú está activo y el usuario presiona una tecla que no corresponde a ningún mnemónico o tecla aceleradora. Este mensaje se envía a la ventana a la que pertenece el menú.

Descripción

chUser: valor de la palabra de menor peso de wParam. Especifica el carácter ASCII que corresponde a la tecla pulsada.

fuFlag: valor de la palabra de mayor peso de wParam. Especifica el tipo de menú activo. Este parámetro puede tener uno de los siguientes valores:

Valor Significado
MF_POPUP Menú emergente, submenú o menú de atajo
MF_SYSMENU Menú de ventana (menú de sistema o control)

hmenu: valor de lParam. Identifica el menú activo.

Valor de retorno

Una aplicación que procese este mensaje debe devolver uno de los siguientes valores en la palabra de mayor peso del valor de retorno:

Valor Significado
0 Informa a Windows de que debe descartar el caracter que el usuario a presionado y emitir un pitido corto a través del altavoz del sistema.
1 Indica a Windows que cierre el menú activo.
2 Indica a Windows que la palabra de menor peso del valor de retorno especifica la posición relativa, empezando en cero de un ítem de menú. Esté ítem será seleccionado por Windows.

Observaciones

La palabra de menor peso se ignora si la palabra de mayor peso es 0 ó 1. Una aplicación debe procesar este mensaje cuando se use un acelerador para seleccionar un ítem de menú que muestre un mapa de bits.