为何不能Disable菜单项
问:我有一个工具按钮在WM_COMMAND消息是这样做的:
CMenu *pMenu = GetMenu();
pMenu->EnableMenuItem(ID_MY_OPTION,MF_BYCOMMAND|MF_DISABLED);
但菜单并没有被Disable
答:缺省的习惯是当没有UpdateCmdUI句柄时程序是使能(Enable)菜单,这就是为什么菜单自动变成使能,只要关掉缺省值就可以了,把下面的代码加入你的程序
CMainFrm::CMainFrm
{
// Other stuff
this->m_bAutoMenuEnable = false;
}
用EnableMenuItem不能使菜单变灰的原因
最新推荐文章于 2026-04-25 03:07:34 发布
本文探讨了在WM_COMMAND消息中使用CMenu禁用菜单项ID_MY_OPTION的问题,并提供了具体的解决方案,即通过设置m_bAutoMenuEnable为false来避免菜单自动启用。

2618

被折叠的 条评论
为什么被折叠?



