CMenu::SetMenuItemBitmaps
Associa bitmaps especificados com um item de menu.
BOOL SetMenuItemBitmaps(
UINT nPosition,
UINT nFlags,
const CBitmap* pBmpUnchecked,
const CBitmap* pBmpChecked
);
Parâmetros
nPosition
Especifica o item de menu seja alterado. O parâmetro de nFlags pode ser usado para interpretar das seguintes maneiras: nPositionnFlags
Interpretação de nPosition
MF_BYCOMMAND
Especifica que o parâmetro fornece a identificação do comando de menu item existente. Esta é a opção se nem nem MF_BYCOMMANDMF_BYPOSITION são definidos.
MF_BYPOSITION
Especifica que o parâmetro retorna a posição do item de menu existente. O primeiro item está na posição 0.
nFlags
Especifica como nPosition é interpretado.pBmpUnchecked
Especifica o bitmap para usar os itens de menu que não são verificados.pBmpChecked
Especifica o bitmap para usar os itens que são verificados.
Valor de retorno
Diferente de zero se a função é com êxito; se não 0.
Comentários
Se o item de menu está marcada ou desmarcada, as janelas exibem o bitmap apropriada próximo ao item de menu.
Se pBmpUnchecked ou pBmpChecked é NULO, então o windows não exibem nada próxima ao item de menu para o atributo correspondente. Se ambos os parâmetros são NULO, o windows usa a marca de seleção padrão quando o item é selecionado e remove a marca de seleção quando o item for desmarcada.
Quando o menu for destruído, esses bitmaps não serão destruídos; o aplicativo deve destrui-los.
A função de GetMenuCheckMarkDimensions do windows recupera as dimensões da marca de seleção padrão usada para itens de menu. O aplicativo usa esses valores para determinar o tamanho apropriado para bitmaps fornecidos com essa função. Obter o tamanho, crie seus bitmaps, e exibir em.
Exemplo
// 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();
Requisitos
Cabeçalho: afxwin.h