Partilhar via


CMenu::SetMenuItemBitmaps

Associa os 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 a ser alterada.The nFlags parâmetro pode ser usado para interpretar nPosition das seguintes maneiras:

    nFlags

    Interpretação dos nPosition

    MF_BYCOMMAND

    Especifica que o parâmetro fornece a ID de comando do item de menu existente.Este é o padrão se nenhuma das MF_BYCOMMAND nor MF_BYPOSITION é definida.

    MF_BYPOSITION

    Especifica que o parâmetro oferece a posição do item de menu existente.O primeiro item é na posição 0.

  • nFlags
    Especifica como nPosition é interpretado.

  • pBmpUnchecked
    Especifica o bitmap a ser usado para itens de menu que não são verificados.

  • pBmpChecked
    Especifica o bitmap a ser usado para itens de menu que são verificados.

Valor de retorno

Diferente de zero se a função for bem-sucedida; caso contrário, 0.

Comentários

Se o item de menu é marcado ou desmarcado, o Windows exibe o bitmap apropriado próxima ao item de menu.

Se qualquer um dos pBmpUnchecked ou pBmpChecked é NULO, Windows exibirá nada ao lado para o item de menu para o atributo correspondente.Se ambos os parâmetros forem NULO, O Windows usa a marca de seleção padrão quando o item é verificado e remove a marca de seleção quando o item está desmarcado.

Quando o menu é destruído, esses bitmaps não são destruídos; o aplicativo deve destrui-los.

O Windows GetMenuCheckMarkDimensions função recupera as dimensões da marca de seleção padrão usado para itens de menu.O aplicativo usa esses valores para determinar o dimensionar apropriado para os bitmaps fornecidos com essa função.Obter o dimensionar, criar seus bitmaps e, em seguida, conjunto-los.

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

Consulte também

Referência

Classe CMenu

Gráfico de hierarquia

GetMenuCheckMarkDimensions

SetMenuItemBitmaps

Outros recursos

CMenu membros