我有一个特殊的类来保存数据组。该类由核心功能和gui功能组成。我使用特定的组方法来显示上下文菜单和执行菜单命令。我在WM_COMAND
中拦截PreTranslateMessage
容易,但我在update command ui
消息时遇到问题。我使用CN_UPDATE_COMMAND_UI
。它甚至没有来到PreTranslateMessage
类的CMDIFrameWndEx
。同时它必须到那里,因为菜单菜单也使用此消息。
使用control range
消息处理程序不是一个选项,因为标识符可能搞砸了,一切都不起作用。
如何拦截邮件以处理on update command ui
?
辅助走动是使菜单项无法on update command ui
。我怎么能这样做?
答案 0 :(得分:0)
基于this MSDN article,在生成WM_INITMENUPOPUP消息时处理ON_UPDATE_COMMAND_UI。所以我认为你必须尝试在PreTranslateMessage中查找WM_INITMENUPOPUP消息。
答案 1 :(得分:0)
经过一段时间的深度调试后,我发现此邮件已进入OnCmdMsg
的{{1}}。