Compartir a través de


CSplitButton::SetDropDownMenu

Establece el menú desplegable que se muestra cuando un usuario hace clic en la flecha de lista desplegable del control actual de botón de expansión.

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

Parámetros

Parámetro

Descripción

[in] nMenuId

el Id. de recurso de la barra de menús.

[in] nSubMenuId

el Id. de recurso de un submenú.

[in] pMenu

Puntero a un objeto de CMenu que especifica un submenú. El objeto de CSplitButton elimina el objeto de CMenu y su HMENU asociado al objeto de CSplitButton sale del ámbito.

Requisitos

encabezado: afxcmn.h

Este método se admite en Windows Vista y posterior.

los requisitos adicionales para este método se describen en Requisitos de compilación para los controles comunes de Windows Vista.

Comentarios

El parámetro de nMenuId identifica una barra de menús, que es una lista horizontal de elementos de barra de menús. El parámetro de nSubMenuId es un número de índice cero- basado en que identifica un submenú, que es la lista desplegable de elementos de menú asociados a cada elemento de la barra de menús. Por ejemplo, una aplicación típica tiene un menú que contiene los elementos de barra de menús, “archivo”, “edición”, y “Ayuda”. El elemento de la barra de menús de “archivo” tiene un submenú que contiene los elementos de menú, “Abrir,” cierre” y “exit”. Cuando la flecha de lista desplegable del control de botón de expansión se hace clic en, el control muestra el submenú especificado, no la barra de menús.

La ilustración siguiente describe un cuadro de diálogo que contiene un control de paginación y (1) un control de botón de expansión. (2) La flecha de lista desplegable se ha hecho clic ya y (3) se muestra el submenú.

Cuadro de diálogo con botón de división y control de paginación.

Ejemplo

El primer fragmento en el ejemplo de código siguiente muestra el método de CSplitButton::SetDropDownMenu . Creamos el menú con el editor de recursos de Visual Studio, que automáticamente llamó al id. de la barra de menús, IDR_MENU1. El parámetro de nSubMenuId , que es cero, hace referencia al único submenú de barra de menús.

  // 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 );

Vea también

Referencia

CSplitButton Class

Gráfico de jerarquías