在某些条件下如何在MFC中隐藏菜单项?
我对仅将其变灰不感兴趣。
最佳答案
为您的菜单项添加一个更新处理程序(使用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);
}