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