Aracılığıyla paylaş


CMenu::GetMenuItemInfo

Bir menü öğesi hakkında bilgi alır.

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

Parametreler

  • uItem
    Tanımlayıcı veya hakkında bilgi almak için menü öğesinin konumu. Bu parametrenin anlamý durumunun değerine bağlı ByPos.

  • lpMenuItemInfo
    Bir işaretçi bir MENUITEMINFO, açıklandığı gibi Windows SDK, menü hakkında bilgi içerir.

  • fByPos
    Ne anlama geldiğini belirten değeri nIDItem. Varsayılan olarak, ByPos olan yanlış, o uItem gösterir bir menü öğesi tanımlayıcısıdır. ByPos Ayarlanmamışsa yanlış, menü öğesi konumunu gösterir.

Dönüş Değeri

İşlev başarılı olursa, dönüş değeri sıfır olmayan bir değer. İşlev başarısız olursa, dönüş değeri sıfırdır. Genişletilmiş hata bilgilerini için Win32 fonksiyonu kullanmak GetLastError, açıklandığı gibi Windows SDK.

Notlar

Bu üye işlev davranışını uygulayan Win32 işlevinin GetMenuItemInfo, açıklandığı gibi Windows SDK. mfc uygulaması, dikkat GetMenuItemInfo, bir menü için bir tanıtıcı kullanmayın.

Örnek

// 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);
}

Gereksinimler

Başlık: afxwin.h

Ayrıca bkz.

Başvuru

CMenu sınıfı

Hiyerarşi grafik

CWnd::GetMenu

CMenu::GetMenuItemCount

CMenu::GetMenuItemID