MFC中对菜单的处理

来源:百度知道 编辑:UC知道 时间:2024/06/07 06:54:29
我在对话框里加了个菜单,菜单ID为ID_Menu,我想屏蔽其中的一个菜单项改怎么屏蔽啊,求大侠们帮帮忙。。。
GetDlgItem(nID)中nID是不是整个菜单的ID啊?

GetDlgItem() 是获取对话框里指定控件的句柄

CMenu::EnableMenuItem用于禁止/开启菜单项

第一个参数用于指定菜单项(可以为索引或资源名)
第二个参数用于制定开启/关闭菜单项

MF_DISABLED 关闭
MF_ENABLED 开启

GetDlgItem(nID)->EnableWindow(true/false) .
true和false一个是禁用,一个是启用

你可以用msdn查下函数 EnableMenuItem

这个函数就是干这用的。不过默认的mfc文档菜单是否可用时系统自动管理的,你要手动进行管理必须告诉他。
可以在CMainFrame的构造函数中调用 m_bAutoMenuEnable = False;

然后你手动进行屏蔽菜单就被允许了。

具体的参数,代码,你可以详细参照msdn的说明