CSplitButton::SetDropDownMenu
Imposta il menu a discesa visualizzato quando un utente fa clic sulla freccia a discesa del controllo corrente pulsante di menu combinato.
void SetDropDownMenu(
UINT nMenuId,
UINT nSubMenuId
);
void SetDropDownMenu(
CMenu* pMenu
);
Parametri
Parametro |
Descrizione |
---|---|
[in] nMenuId |
ID di risorsa barra dei menu. |
[in] nSubMenuId |
ID di risorsa di un sottomenu. |
[in] pMenu |
Puntatore a un oggetto CMenu che specifica un sottomenu. L'oggetto CSplitButton elimina l'oggetto CMenu e il relativo HMENU collegato quando l'oggetto CSplitButton area di validità. |
Requisiti
intestazione: afxcmn.h
Questo metodo è supportato in Windows Vista e versioni successive.
i requisiti aggiuntivi per questo metodo sono descritti in Requisiti di compilazione per i controlli comuni di Windows Vista.
Note
Il parametro nMenuId identifica una barra dei menu, ovvero un elenco orizzontale degli elementi della barra dei menu. Il parametro nSubMenuId è un numero di indice a base zero che identifica un sottomenu, ovvero l'elenco a discesa delle voci di menu associato a ciascun elemento della barra dei menu. Ad esempio, un'applicazione tipica include un menu che contiene elementi della barra dei menu, "file", "modifica," e "guida." L'elemento barra dei menu "file" contiene un sottomenu che contiene le voci di menu, "aperto," Chiudi" e "exit". Quando la freccia a discesa del controllo pulsante di menu combinato viene selezionato, il controllo visualizza il sottomenu specificato, non la barra dei menu.
Nella figura raffigura una finestra di dialogo contenente un controllo pager e un (1) controllo pulsante di menu combinato. (2) La freccia a discesa è già stato fatto clic e (3) il sottomenu viene visualizzato.
Esempio
La prima istruzione nel seguente esempio di codice seguente viene illustrato il metodo CSplitButton::SetDropDownMenu. Creato il menu con l'editor di risorse di Visual Studio, che vengono automaticamente denominato la barra dei menu ID, IDR_MENU1. Il parametro nSubMenuId, che è zero, si riferisce a solo sottomenu barra dei menu.
// 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 );