CMenu::ModifyMenu
Modifique 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 seja alterado.O parâmetro de nFlags pode ser usado para interpretar das seguintes maneiras: nPositionnFlags
Interpretação de nPosition
MF_BYCOMMAND
Especifica que o parâmetro fornece a identificação do comando de menu item existente.Esta é a opção se nem nem MF_BYCOMMANDMF_BYPOSITION são definidos.
MF_BYPOSITION
Especifica que o parâmetro retorna a posição do item de menu existente.O primeiro item está na posição 0.
nFlags
Especifica como nPosition é interpretado e fornece informações sobre as alterações a serem feitas ao item de menu.Para obter uma lista de sinalizadores que podem ser definidos, consulte a função de membro de AppendMenu .nIDNewItem
Especifica a identificação de comando do item de menu modificado ou, se nFlags é definido como MF_POPUP, a alça de menu (HMENU) de um menu pop-up.O parâmetro de nIDNewItem é ignorado (não necessariamente) se nFlags é definido como MF_SEPARATOR.lpszNewItem
Especifica o conteúdo do novo item de menu.O parâmetro de nFlags pode ser usado para interpretar das seguintes maneiras: lpszNewItemnFlags
Interpretação de lpszNewItem
MF_OWNERDRAW
Contém um valor de 32 bits do aplicativo fornecido que o aplicativo possa usar para manter os dados adicionais associados com o item de menu.Este valor de 32 bits está disponível para o aplicativo quando ele processa MF_MEASUREITEM e MF_DRAWITEM.
MF_STRING
Contém um ponteiro para uma longa cadeia de caracteres NULL- finalizada ou a CString.
MF_SEPARATOR
O parâmetro de lpszNewItem é ignorado (não necessariamente).
pBmp
Os pontos a CBitmap objeto que será usado como o item de menu.
Valor de retorno
Diferente de zero se a função é com êxito; se não 0.
Comentários
O aplicativo especifica o novo estado do item de menu definindo valores em nFlags.Se esta função substitui um menu pop-up associado com o item de menu for, o menu pop-up antigo e libera memória usada pelo menu pop-up.
Quando nIDNewItem especifica um menu pop-up, ela se torna parte do menu em que é inserido.Se o menu é destruído, o menu será destruído também inserido.Um menu inserido deve ser desanexado de um objeto de CMenu para evitar o conflito.
Sempre que um menu que reside em uma janela é alterado (se a janela é exibida), o aplicativo deve chamar CWnd::DrawMenuBar.Para alterar os atributos de itens de menu existentes, é muito mais rápido usar as funções de membro de CheckMenuItem e de EnableMenuItem .
Exemplo
Consulte o exemplo para CMenu::InsertMenu.
Requisitos
Cabeçalho: afxwin.h