如何在MFC中的某些条件下隐藏菜单项?
我对它的灰色不感兴趣。
答案 0 :(得分:14)
为菜单项添加更新处理程序(使用ON_UPDATE_COMMAND_UI)。
此行应显示在您的留言地图中:
ON_UPDATE_COMMAND_UI(ID_MYMENUITEM, OnUpdateMyMenuItem)
在处理程序中,使用以下代码:
void CMainFrame::OnUpdateMyMenuItem(CCmdUI *pCmdUI)
{
if (pCmdUI->m_pMenu!=NULL)
pCmdUI->m_pMenu->DeleteMenu(pCmdUI->m_nID, MF_BYCOMMAND);
}
答案 1 :(得分:3)
或者,如果要删除单个菜单项,请使用CMenu :: RemoveMenu