Partilhar via


CMenu::ModifyMenu

Altera um item de menu existente na posição especificada por nPosition.

BOOL ModifyMenu(
   UINT nPosition,
   UINT nFlags,
   UINT_PTR nIDNewItem = 0,
   LPCTSTR lpszNewItem = NULL 
);
BOOL ModifyMenu(
   UINT nPosition,
   UINT nFlags,
   UINT_PTR nIDNewItem,
   const CBitmap* pBmp 
);

Parâmetros

  • nPosition
    Especifica o item de menu a ser alterada.The nFlags parâmetro pode ser usado para interpretar nPosition das seguintes maneiras:

    nFlags

    Interpretação dos nPosition

    MF_BYCOMMAND

    Especifica que o parâmetro fornece a ID de comando do item de menu existente.Este é o padrão se nenhuma das MF_BYCOMMAND nor MF_BYPOSITION é definida.

    MF_BYPOSITION

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

  • nFlags
    Especifica como nPosition é interpretado e fornece informações sobre as alterações sejam feitas ao item de menu. Para obter uma lista de sinalizadores que podem ser conjunto, consulte o AppendMenufunção de membro .

  • nIDNewItem
    Especifica a ID de comando do item de menu modificado ou, se nFlags é definido como MF_POPUP, o identificador de menu (HMENU) de um menu pop-up. The nIDNewItem parâmetro é ignorado (não necessários) se nFlags é conjunto para MF_SEPARATOR.

  • lpszNewItem
    Especifica o conteúdo do novo item de menu.The nFlags parâmetro pode ser usado para interpretar lpszNewItem das seguintes maneiras:

    nFlags

    Interpretação dos lpszNewItem

    MF_OWNERDRAW

    Contém um valor de 32 bit fornecido pelo aplicativo que o aplicativo pode usar para manter dados adicionais associados ao item de menu.Esse valor de 32 bit está disponível para o aplicativo quando ele processa MF_MEASUREITEM and MF_DRAWITEM.

    MF_STRING

    Contém um ponteiro longo para uma seqüência de caracteres terminada com caractere nulo ou um CString.

    MF_SEPARATOR

    The lpszNewItem parâmetro será ignorado (necessária).

  • pBmp
    Aponta para um CBitmap objeto que será usado sistema autônomo o item de menu.

Valor de retorno

Diferente de zero se a função for bem-sucedida; caso contrário, 0.

Comentários

O aplicativo especifica o novo estado do item de menu definindo valores na nFlags. Se essa função substitui um menu pop-up associado a este item de menu, ele destrói o menu pop-up antigo e libera a memória usada pelo menu pop-up.

Quando nIDNewItem Especifica um menu pop-up, ele se torna parte do menu no qual ela está inserida. Se esse menu é destruído, o menu inserido também será destruído.Um menu inserido deve ser desanexado de um CMenu objeto para evitar o conflito.

Sempre que um menu que reside em uma janela é alterado (ou não a janela é exibida), o aplicativo deve chamar CWnd::DrawMenuBar. Para alterar os atributos dos itens de menu existentes, é muito mais rápido usar o CheckMenuItem e EnableMenuItem funções de membro.

Exemplo

Consulte o exemplo para CMenu::InsertMenu.

Requisitos

Cabeçalho: afxwin.h

Consulte também

Referência

Classe CMenu

Gráfico de hierarquia

CMenu::AppendMenu

CMenu::InsertMenu

CMenu::CheckMenuItem

CWnd::DrawMenuBar

CMenu::EnableMenuItem

CMenu::SetMenuItemBitmaps

CMenu::desanexar

ModifyMenu

Outros recursos

CMenu membros