CMenu::SetMenuItemBitmaps
Связывает указанные растровые изображения к пункту меню.
BOOL SetMenuItemBitmaps(
UINT nPosition,
UINT nFlags,
const CBitmap* pBmpUnchecked,
const CBitmap* pBmpChecked
);
Параметры
nPosition
Определяет пункта меню, которое нужно изменить.Параметр nFlags может использоваться для интерпретации nPosition следующими способами:nFlags
Интерпретация nPosition
MF_BYCOMMAND
Указывает, что параметр содержит идентификатор команды существующего пункта меню.Это значение по умолчанию, если ни MF_BYCOMMAND ни MF_BYPOSITION установлены.
MF_BYPOSITION
Указывает, что данный параметр предоставляет позицию существующего пункта меню.Первый элемент в позиции 0.
nFlags
Определяет способ интерпретации nPosition.pBmpUnchecked
Задает растровое изображение для использования для пунктов меню, которые не проверены.pBmpChecked
Задает растровое изображение для использования для пунктов меню, проверены.
Возвращаемое значение
Ненулевой если функция успешно; в противном случае – значение 0.
Заметки
Ли пункт меню проверки или снят, Windows отображается соответствующее растровое изображение рядом с пунктом меню.
Если pBmpUnchecked или pBmpCheckedNULL 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