2013-03-08 93 views
1

在Win32 API,在Windows消息假定确定WM_SYSCOMMAND或WM_ENTERMENULOOP激活哪个菜单项?

&文件的菜单 - &编辑 - &查看

用户点击文件。 WM_SYSCOMMAND(WParam = SC_MOUSEMENU或SC_KEYMENU)然后发送WM_ENTERMENULOOP。 用户单击编辑。相同。

我想知道哪一个即将显示在弹出之前。是&文件,是&编辑是否已激活?

它看起来不像WM_SYSCOMMAND或WM_ENTERMENULOOP传递提供此信息的信息。有什么方法可以确定吗?

回答

2

那将是WM_INITMENUPOPUP

此邮件发送给所有者窗口。其wParam参数包含即将显示的弹出菜单的HMENU

lParam参数的低位字指定打开的弹出式菜单项的索引,它的高位字是TRUE如果弹出菜单是系统菜单,或FALSE否则。