CMenu::SetMenuItemBitmaps

将指定的位图与菜单项。

BOOL SetMenuItemBitmaps(
   UINT nPosition,
   UINT nFlags,
   const CBitmap* pBmpUnchecked,
   const CBitmap* pBmpChecked 
);

参数

  • nPosition
    指定要更改的菜单项。 nFlags 参数可用于以下方式解释 nPosition :

    nFlags

    nPosition的说明

    MF_BYCOMMAND

    指定参数为现有菜单项的命令ID。 如果 MF_BYCOMMANDMF_BYPOSITION 未设置,这是默认值。

    MF_BYPOSITION

    指定参数为现有菜单项的位置。 第一项在位置0。

  • nFlags
    指定 nPosition 如何解释。

  • pBmpUnchecked
    指定位图用于未检查的菜单项使用。

  • pBmpChecked
    位图指定为签出的菜单项使用。

返回值

非零,如果函数运行成功;否则为0。

备注

菜单项是否中或取消选中,在Windows菜单项旁显示相应的位图。

如果 pBmpUnchecked 或 pBmpChecked 是 NULL,则Windows没有在相应属性的菜单项旁显示。 如果两个参数都是 NULL,Windows使用默认选中标记,在中选中和移除选中标记,当项目处于未选中时。

当销毁时菜单,销毁这些位图;应用程序必须销毁它们。

Windows GetMenuCheckMarkDimensions 函数检索用于菜单项的默认选中标记的大小。 应用程序使用这些值确定位图的适当范围提供了此功能。 获取范围,创建您的位图,然后将它们。

示例

// The code fragment below is from CMainFrame::OnCreate and shows 
// how to associate bitmaps with the "Bitmap" menu item. 
// Whether the "Bitmap" menu item is checked or unchecked, Windows 
// displays the appropriate bitmap next to the menu item. Both 
// IDB_CHECKBITMAP and IDB_UNCHECKBITMAP bitmaps are loaded 
// in OnCreate() and destroyed in the destructor of CMainFrame class. 
// CMainFrame is a CFrameWnd-derived class.

// Load bitmaps from resource. Both m_CheckBitmap and m_UnCheckBitmap
// are member variables of CMainFrame class of type CBitmap.
ASSERT(m_CheckBitmap.LoadBitmap(IDB_CHECKBITMAP));
ASSERT(m_UnCheckBitmap.LoadBitmap(IDB_UNCHECKBITMAP));

// Associate bitmaps with the "Bitmap" menu item. 
CMenu* mmenu = GetMenu();
CMenu* submenu = mmenu->GetSubMenu(4);
ASSERT(submenu->SetMenuItemBitmaps(ID_MENU_BITMAP, MF_BYCOMMAND, 
   &m_CheckBitmap, &m_UnCheckBitmap));
// This code fragment is taken from CMainFrame::~CMainFrame

// Destroy the bitmap objects if they are loaded successfully 
// in OnCreate().
if (m_CheckBitmap.m_hObject)
   m_CheckBitmap.DeleteObject();

if (m_UnCheckBitmap.m_hObject)
   m_UnCheckBitmap.DeleteObject();

要求

Header: afxwin.h

请参见

参考

CMenu选件类

层次结构图

GetMenuCheckMarkDimensions

SetMenuItemBitmaps