我有一个HMENU,我知道该项目位于给定位置,有这样的信息可以做这样的事情:RunMenuItem(hMenu,3)
其中3是该项目的位置?
答案 0 :(得分:2)
当您从菜单中选择项目时,可能会发生以下两种情况之一:
WM_COMMAND
消息发布到菜单的父窗口,其中包含菜单项ID或TrackPopupMenu
TPM_RETURNCMD
标记,则会调用选定的商品ID作为调用TrackPopupMenu
的结果。< / LI>
在第一种情况下,您可以通过使用适当的参数自行发布WM_COMMAND
消息来以编程方式模拟此操作。您需要在HMENU
查询菜单项ID(使用GetMenuItemInfo
)。
在第二种情况下,没有简单的方法来模拟它,因为它依赖于调用线程实际调用TrackPopupMenu
并处理结果。