CSplitButton::SetDropDownMenu

Define o menu suspenso que é exibido quando um usuário clica na seta suspensa do controle de botão de divisão corrente.

void SetDropDownMenu(
    UINT nMenuId, 
    UINT nSubMenuId
);
void SetDropDownMenu(
        CMenu* pMenu
);

Parâmetros

Parâmetro

Descrição

[in] nMenuId

A ID do recurso do menu BAR.

[in] nSubMenuId

A ID de recurso de um submenu.

[in] pMenu

Ponteiro para um CMenu objeto que especifica um submenu.The CSplitButton exclusões de objeto a CMenu objeto e seu associado HMENU Quando o CSplitButton objeto sai do escopo.

Requisitos

Cabeçalho: afxcmn.h

Este método é suportado no Windows Vista e mais recente.

Requisitos adicionais para este método são descritos em compilação Requisitos para controles comuns do Windows Vista.

Comentários

The nMenuId parâmetro identifica um menu BARs, que é uma lista horizontal de menu itens da BAR. The nSubMenuId parâmetro é um número de índice baseado em zero que identifica um submenu, que é a lista suspensa de itens de menu associados a cada BAR de menus item. Por exemplo, um aplicativo típico tem um menu que contém o BAR de menus itens, "arquivo", "edição" e "Ajuda". "Arquivo" BAR de menus item tem um submenu que contém os itens de menu "em aberto," "Fechar" e "Sair". Quando você clica a seta suspensa do controle de botão de divisão, o controle exibe a sub-rotina especificada menu, e não o menu BAR.

A figura a seguir mostra uma caixa de diálogo que contém um controle de paginação e um controle de botão de divisão (1).Já tenha sido clicado na seta suspensa (2) e o submenu (3) é exibida.

Exemplo

A primeira demonstrativo no exemplo de código a seguir demonstra o CSplitButton::SetDropDownMenu método. Criamos o menu com o Visual Studio editor de recurso, chamado automaticamente a ID BAR de menus, IDR_MENU1. The nSubMenuId parâmetro, que é zero, refere-se para o submenu somente da BAR de menus.

  // Initialize the dropdown menu of the splitbutton control.
    m_splitButton.SetDropDownMenu(IDR_MENU1, 0);

    // Create the pager control.
    BOOL nRet;
    CRect rect;
    GetClientRect(&rect);
    nRet = m_pager.Create(
        (WS_VISIBLE | WS_CHILD | PGS_HORZ),
        CRect(rect.Width()/4, 5, (rect.Width() * 3)/4, 55),
        this,
        IDC_PAGER1); 

    m_pager.GetClientRect( &rect );
    nRet = m_button.Create(
        _T("This is a very, very long button. 012345678901234567890"), 
        (WS_VISIBLE | WS_CHILD), // Do not use CCS_NORESIZE.
        CRect(0,0,rect.Width(),30), 
        &m_pager, IDC_BUTTON1);

    m_pager.SetChild(m_button.m_hWnd);
    m_pager.SetButtonSize( 20 );
    m_pager.SetBorder( 1 );

Consulte também

Referência

Classe CSplitButton

Gráfico de hierarquia

Outros recursos

CSplitButton membros