我有一些遗留代码,由于某种原因,菜单项在启动时被启用或禁用。我的问题是,如何?有没有办法在不调用 EnableMenuItem() 函数的情况下执行此操作? MFC 有没有办法做与资源设置所说相反的事情?
我也不明白为什么当最后一个子窗口关闭时,当前的窗口在 SDI 中被禁用或重新启用。这可能是因为我对框架的理解不够好,我认为我已经阅读了所有文档here http://msdn.microsoft.com/en-us/library/windows/desktop/ms646977(v=vs.85).aspx.
使用 MFC,如果没有菜单项,则可以禁用菜单项ON_UPDATE_COMMAND_UI http://msdn.microsoft.com/en-us/library/0b38d64w.aspx处理程序也不是ON_COMMAND http://msdn.microsoft.com/en-us/library/a5f1bcxd.aspx菜单项的处理程序——根据这篇 MSDN 文章 http://msdn.microsoft.com/en-us/library/essk9ab2.aspx,
如果框架在执行期间未找到 ON_UPDATE_COMMAND_UI 条目
命令路由,它会自动启用用户界面对象,如果
某处有一个具有相同命令 ID 的 ON_COMMAND 条目。
否则,它将禁用用户界面对象
...
可以禁用用户界面对象的默认禁用。
欲了解更多信息,请参阅m_b自动菜单启用 http://msdn.microsoft.com/en-us/library/dz33x6wb.aspxMFC 参考中 CFrameWnd 类的成员
[这适用于菜单项和工具栏项]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)