CMenu::GetMenuItemInfo
Ruft Informationen über ein Menüelement ab.
BOOL GetMenuItemInfo(
UINT uItem,
LPMENUITEMINFO lpMenuItemInfo,
BOOL fByPos = FALSE
);
Parameter
uItem
Bezeichner oder Position des Menüelements, Informationen abgerufen.Die Bedeutung dieses Parameters hängt vom Wert von ByPos ab.lpMenuItemInfo
Ein Zeiger auf MENUITEMINFO, wie in Windows SDK beschrieben, der Informationen über das Menü enthält.fByPos
Wert, der die Wichtigkeit von nIDItem angibt.Standardmäßig ist ByPosFALSE, das dieses uItem ist ein Menüelementbezeichner angibt.Wenn ByPos nicht zu FALSE festgelegt ist, gibt es eine Menüelementposition an.
Rückgabewert
Wenn die Funktion folgt, ist der Rückgabewert ungleich 0 (null).Wenn die Funktion fehlschlägt, ist der Rückgabewert null.Um erweiterte Fehlerinformationen abzurufen, verwenden Sie die Win32-Funktion GetLastError, wie in Windows SDK beschrieben.
Hinweise
Diese Memberfunktion implementiert das Verhalten von der Win32-Funktion GetMenuItemInfo, wie in Windows SDK beschrieben.Beachten Sie das in der MFC-Implementierung von GetMenuItemInfo, Sie verwenden ein Handle nicht zu einem Menü.
Beispiel
// 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);
}
Anforderungen
Header: afxwin.h