WM_MENUCHAR消息在菜单激活时发送,用户按下与任何助记符或加速键不对应的键。此消息将发送到拥有该菜单的窗口。
WM_MENUCHAR
chUser = (char) LOWORD(wParam); // ASCII字符
fuFlag = (UINT) HIWORD(wParam); //菜单标志
hmenu = (HMENU) lParam; //菜单的句柄
参数
【chUser】
【wParam中】的低位字的值。指定与用户按下的键对应的ASCII字符。
【fuFlag】
【wParam中】的高位字的值。指定活动菜单的类型。此参数可以是以下值之一:
值 | 含义 |
MF_POPUP | 下拉菜单,子菜单或快捷菜单 |
MF_SYSMENU | 窗口菜单(系统菜单或控制菜单) |
【HMENU】
价值【lParam的】.标识活动菜单。
返回值
处理此消息的应用程序应在返回值的高位字中返回以下值之一:
值 | 含义 |
0 | 通知Windows应该丢弃用户按下的字符,并在系统扬声器上创建一个短的哔声。 |
1 | 通知Windows应该关闭活动菜单。 |
2 | 通知Windows,返回值的低位字指定菜单项的基于零的相对位置。此项目由Windows选择。 |
备注
如果高位字含有0或1,则忽略低位字。当加速器用于选择显示位图的菜单项时,应用程序应处理此消息。