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