CMenu::GetMenuItemInfo
Recupera informações sobre um item de menu.
BOOL GetMenuItemInfo(
UINT uItem,
LPMENUITEMINFO lpMenuItemInfo,
BOOL fByPos = FALSE
);
Parâmetros
uItem
Identificador ou a posição do item de menu para obter informações sobre.O significado desse parâmetro depende do valor de ByPos.lpMenuItemInfo
Um ponteiro para um MENUITEMINFO, sistema autônomo descrito o Windows SDK, que contém informações sobre o menu.fByPos
Valor que especifica o significado de nIDItem. Por padrão, ByPos é FALSE, que indica que uItem é um identificador de item de menu.If ByPos não foi definida como FALSE, ele indica uma posição de item de menu.
Valor de retorno
Se a função obtiver êxito, o valor retornado é diferente de zero.Se a função falhar, o valor retornado será zero.Para obter informações de erro estendidas, use a função de Win32 GetLsistema autônomotError, sistema autônomo descrito o Windows SDK.
Comentários
Esta função de membro implementa o comportamento do Win32 funcionam GetMenuItemInfo, conforme descrito no Windows SDK. Observe que, na implementação do MFCGetMenuItemInfo, você não usar um identificador para um menu.
Exemplo
// CMainFrame::OnToggleTestMenuInfo() is a menu command handler for
// "Toggle Info" menu item (whose resource id is ID_MENU_TOGGLEINFO). It
// toggles the checked or unchecked state of the "Toggle Info" menu item.
// CMainFrame is a CFrameWnd-derived class.
void CMainFrame::OnToggleTestMenuItemInfo()
{
// Get the popup menu which contains the "Toggle Info" menu item.
CMenu* mmenu = GetMenu();
CMenu* submenu = mmenu->GetSubMenu(4);
// Check the state of the "Toggle Info" menu item. Check the menu item
// if it is currently unchecked. Otherwise, uncheck the menu item
// if it is not currently checked.
MENUITEMINFO info;
info.cbSize = sizeof (MENUITEMINFO); // must fill up this field
info.fMask = MIIM_STATE; // get the state of the menu item
VERIFY(submenu->GetMenuItemInfo(ID_MENU_TOGGLEINFO, &info));
if (info.fState & MF_CHECKED)
submenu->CheckMenuItem(ID_MENU_TOGGLEINFO, MF_UNCHECKED | MF_BYCOMMAND);
else
submenu->CheckMenuItem(ID_MENU_TOGGLEINFO, MF_CHECKED | MF_BYCOMMAND);
}
Requisitos
Cabeçalho: afxwin.h