Compartilhar via


CMenu::EnableMenuItem

Habilita, desabilita ou escurece um item de menu.

UINT EnableMenuItem(
   UINT nIDEnableItem,
   UINT nEnable 
);

Parâmetros

  • nIDEnableItem
    Especifica o item de menu para ser ativado, conforme determinado pelo nEnable. Este parâmetro pode especificar sistema autônomo itens de menu pop-up, bem sistema autônomo itens de menu padrão.

  • nEnable
    Especifica a ação a tomar.Ele pode ser uma combinação de MF_DISABLED, MF_ENABLED, ou MF_GRAYED, with MF_BYCOMMAND or MF_BYPOSITION.Esses valores podem ser combinados, usando o operador OR bit a bit.Esses valores apresentam os seguintes significados:

    • MF_BYCOMMAND   Especifica que o parâmetro fornece a ID de comando do item de menu existente.Este é o padrão.

    • MF_BYPOSITION   Especifica que o parâmetro oferece a posição do item de menu existente.O primeiro item é na posição 0.

    • MF_DISABLED   Desabilita o item de menu para que ele não pode ser selecionado, mas não esmaecer.

    • MF_ENABLED   Permite que o item de menu para que ele pode ser selecionado e restaura o estado esmaecido.

    • MF_GRAYED   Desabilita o item de menu para que ele não pode ser selecionado e escurece a ele.

Valor de retorno

Estado anterior (MF_DISABLED, MF_ENABLED, ou MF_GRAYED) ou -1 se inválido.

Comentários

The CreateMenu, InsertMenu, ModifyMenu, and LoadMenuIndirect funções de membro também podem conjunto o estado (ativado, desabilitado ou esmaecido) de um item de menu.

Usando o MF_BYPOSITION valor exige que um aplicativo para usar o corretoCMenu. Se o CMenu do barra de menus é usada, um item de menu de nível superior (um item da BAR de menus) será afetado. Para conjunto o estado de um item em um menu pop-up pop-up ou aninhado por posição, um aplicativo deve especificar o CMenu do menu pop-up.

Quando um aplicativo especifica o MF_BYCOMMAND sinalizar, o Windows verifica todos os itens de menu pop-up que estão subordinados a CMenu; Portanto, a menos que itens de menu duplicados estejam presentes, usando o CMenu do menu, BAR é suficiente.

Exemplo

// The code fragment below shows how to disable (and gray out) the 
// File\New menu item.
// NOTE: m_bAutoMenuEnable is set to FALSE in the constructor of 
// CMainFrame so no ON_UPDATE_COMMAND_UI or ON_COMMAND handlers are 
// needed, and CMenu::EnableMenuItem() will work as expected.

CMenu* mmenu = GetMenu();
CMenu* submenu = mmenu->GetSubMenu(0);
submenu->EnableMenuItem(ID_FILE_NEW, MF_BYCOMMAND | MF_DISABLED | MF_GRAYED);

Requisitos

Cabeçalho: afxwin.h

Consulte também

Referência

Classe CMenu

Gráfico de hierarquia

CMenu::GetMenuState

EnableMenuItem

Outros recursos

CMenu membros