CMenu:: ModifyMenu

BOOL ModifyMenu ( UINT nPosition, UINT nFlags, UINT nIDNewItem = 0, LPCTSTR lpszNewItem = Nulo );

BOOL ModifyMenu ( UINT nPosition, UINT nFlags, UINT nIDNewItem, const CBitmap * pBmp );

Valor de retorno

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

Parâmetros

nPosition

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

nFlags Interpretação dos nPosition
MF_BYCOMMAND Especifica que o parâmetro oferece a identificação de comando do item de menu existente. Este é o padrão se nem MF_BYCOMMAND MF_BYPOSITION é definido.
MF_BYPOSITION Especifica que o parâmetro oferece 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 para o item de menu. Para obter uma lista dos sinalizadores que podem ser definidas, consulte a função de membro AppendMenu.

nIDNewItem

Especifica a identificação de comando do item de menu modificados ou, se nFlags for definido como MF_POPUP, o identificador de menu (HMENU) de um menu pop-up. O parâmetro nIDNewItem será ignorado (não necessário) se nFlags for definido como MF_SEPARATOR.

lpszNewItem

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

nFlags Interpretação dos lpszNewItem
MF_OWNERDRAW Contém um valor 32 bits fornecido do aplicativo que o aplicativo pode usar para manter dados adicionais associados com o item de menu. Esse valor de 32 bits está disponível para o aplicativo quando ele processa MF_MEASUREITEM e MF_DRAWITEM.
MF_STRING Contém um ponteiro longo para uma seqüência de caracteres null-terminated ou um CString.
MF_SEPARATOR O parâmetro lpszNewItem é ignorado (não necessário).

pBmp

Aponta para um objeto CBitmap que será usado como o item de menu.

Observações

Altera um item de menu existente na posição especificada por nPosition. O aplicativo especifica o novo Estado do item de menu por configuração valores em nFlags. Se essa função substitui um menu pop-up associado com o item de menu, ele destrói o antigo menu pop-up 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 ele está inserido. Se esse menu for destruído, o menu inserido também será destruído. Um menu inserido deve ser desanexado de um objeto de CMenu para evitar conflito.

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

Visão geral de CMenu |nbsp; Membros de classe | Gráfico de hierarquia

Consulte tambémnbsp;CMenu:: AppendMenu, CMenu, CMenu::CheckMenuItem, CWnd:: DrawMenuBar, CMenu::EnableMenuItem, CMenu::SetMenuItemBitmaps, CMenu::Detach, :: ModifyMenu

Index