2009-01-05 10 views

Respuesta

13

Agregue un Controlador de actualización para su elemento de menú (usando ON_UPDATE_COMMAND_UI).

Esta línea debe aparecer en el mapa de mensajes:

ON_UPDATE_COMMAND_UI(ID_MYMENUITEM, OnUpdateMyMenuItem) 

En el controlador, utilice este código:

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

Estaba teniendo problemas para obtener un puntero válido para el objeto CMenu correcto. ¡Este código fue el truco! – GTAE86

2

O si va a quitar un elemento de menú de un solo uso CMenu :: RemoveMenu

Cuestiones relacionadas