小甲鱼 发表于 2016-3-24 20:31:16

WM_COMMAND 消息

注:本文档由 百日维新 翻译,小甲鱼校对。

原文链接 -> 传送门

消息含义:

当用户从菜单选中一个命令项或者当一个控件发送通知消息给父窗口或者按下一个快捷键将发送 WM_COMMAND 消息。


消息定义:

#define WM_COMMAND                      0x0111

参数解析:

wParam:关于这个参数的描述,请参阅备注。

lParam:关于这个参数的描述,请参阅备注。


返回值:

如果应用程序处理这个消息,它应该返回 0。


备注:

wParam 和 lParam 参数使用总结:


消息源 wParam(高位字) wParam(低位字) lParam
菜单 0 菜单 ID(IDM_*) 0
快捷键 1 快捷键 ID(IDM_*)        0
控件 控件定义通知代码 控件 ID 控件窗口句柄

菜单

1. 如果应用程序启用菜单分隔符,当用户选择的分隔符时,系统发送一个低字的 wParam 参数设置为 0 的 WM_COMMAND 消息。

2. 如果一个菜单的 MNS_NOTIFYBYPOS 值被定义为 MENUINFO.dwStyle,WM_COMMAND 消息将不会被发送,而是发送 WM_MENUCOMMAND 消息。

快捷键

1. 窗口菜单中的快捷键被转成 WM_SYSCOMMAND 消息。

2. 如果窗口菜单项有与之匹配的快捷键,当菜单窗口被最小化,将不会发送WM_COMMAND消息。如果窗口菜单项或者窗口菜单没有与之相匹配的快捷键 , 即使窗口被最小化,也会发送一则 WM_COMMAND 消息。


需求:


Minimum supported client Windows 2000 专业版 [仅桌面应用程序]
Minimum supported server Windows 2000 服务器版 [仅桌面应用程序]
Header Winuser.h (包含于 Windows.h)


【API档案】版权归鱼C工作室(www.fishc.com)所有,转载请注明来源。

页: [1]
查看完整版本: WM_COMMAND 消息