MFC で特定の条件下でメニュー項目を非表示にするにはどうすればよいですか?
グレーアウトするだけには興味がありません。
16480 次
2 に答える
18
メニュー項目の更新ハンドラーを追加します (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);
}
于 2009-01-05T16:09:26.973 に答える
3
または、単一のメニュー項目を削除する場合は、CMenu:: RemoveMenuを使用します
于 2009-01-05T16:12:30.757 に答える