Frage

Wie kann ich einen Menüpunkt unter bestimmten Bedingungen in MFC verstecken?
Ich bin nicht daran interessiert, es nur Vergrauung aus.

War es hilfreich?

Lösung

Fügen Sie ein Update Handler für Ihren Menüpunkt (mit ON_UPDATE_COMMAND_UI).

Diese Zeile in Ihrer Nachricht Karte erscheinen sollte:

  ON_UPDATE_COMMAND_UI(ID_MYMENUITEM, OnUpdateMyMenuItem)

In den Handler, diesen Code verwenden:

void CMainFrame::OnUpdateMyMenuItem(CCmdUI *pCmdUI)
{
  if (pCmdUI->m_pMenu!=NULL)
    pCmdUI->m_pMenu->DeleteMenu(pCmdUI->m_nID, MF_BYCOMMAND);
}

Andere Tipps

Oder wenn Sie entfernen, ein einzelner Menüpunkt CMenu verwenden :: RemoveMenu

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top