CMenu::SetMenuItemBitmaps
지정한 비트맵 메뉴 항목과 연결합니다.
BOOL SetMenuItemBitmaps(
UINT nPosition,
UINT nFlags,
const CBitmap* pBmpUnchecked,
const CBitmap* pBmpChecked
);
매개 변수
nPosition
변경 메뉴 항목을 지정 합니다.nFlags 매개 변수를 사용 하 여 해석 하 nPosition 를 사용할 수 있습니다.nFlags
Nposition의 해석
MF_BYCOMMAND
지정 매개 변수는 기존 메뉴 항목의 명령 ID를 제공 합니다.두 경우 이것이 기본값입니다 MF_BYCOMMAND 또는 MF_BYPOSITION 설정 됩니다.
MF_BYPOSITION
지정 매개 변수는 기존 메뉴 항목의 위치를 제공 합니다.첫 번째 항목은 0 위치에 있습니다.
nFlags
지정 하는 방법 nPosition 해석 됩니다.pBmpUnchecked
확인 하지 않은 메뉴 항목에 사용할 비트맵을 지정 합니다.pBmpChecked
선택한 메뉴 항목에 사용할 비트맵을 지정 합니다.
반환 값
함수가 성공 하면 0이 아닌. 그렇지 않으면 0입니다.
설명
메뉴 항목의 checked 또는 unchecked 인지 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();
요구 사항
헤더: afxwin.h