Compartilhar via


CMenu::GetMenuItemInfo

Recupera informações sobre um item de menu.

BOOL GetMenuItemInfo(
   UINT uItem,
   LPMENUITEMINFO lpMenuItemInfo,
   BOOL fByPos = FALSE 
);

Parâmetros

  • uItem
    Identificador ou posição do item de menu obter informações sobre.O significado de este parâmetro depende do valor de ByPos.

  • lpMenuItemInfo
    Um ponteiro para MENUITEMINFO, como descrito em Windows SDK, que contém informações sobre o menu.

  • fByPos
    Valor especificando o significado de nIDItem.Por padrão, ByPos é Falso, que indica que o uItem é um identificador do item de menu.Se ByPos não é definido como Falso, indica uma posição do item de menu.

Valor de retorno

Se a função for bem sucedida, o valor de retorno é diferente de zero.Se a função falhar, o valor de retorno é zero.Para obter informações de erro estendido, use a função GetLastErrorWin32, como descrito em Windows SDK.

Comentários

Essa função de membro implementa o comportamento da função GetMenuItemInfoWin32, como descrito em Windows SDK.Observe que na implementação de GetMenuItemInfo, você MFC não usam 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

Consulte também

Referência

Classe de CMenu

Gráfico de hierarquia

CWnd::GetMenu

CMenu::GetMenuItemCount

CMenu::GetMenuItemID