Condividi tramite


Casella combinata (controlli Windows)

Questa sezione contiene informazioni sugli elementi di programmazione usati con le caselle combinate. Una casella combinata è un tipo univoco di controllo, definito dalla classe COMBOBOX, che combina gran parte delle funzionalità di una casella di riepilogo e di un controllo di modifica.

Panoramiche

Argomento Contenuto
Informazioni sulle caselle combinate In questa sezione vengono illustrati i diversi tipi di caselle combinate.
Funzionalità casella combinata Questo documento illustra le caratteristiche della casella combinata.
Uso di caselle combinate Gli esempi di codice in questa sezione illustrano come eseguire attività associate alle caselle combinate.

Funzioni

Argomento Contenuto
DlgDirListComboBox Sostituisce il contenuto di una casella combinata con i nomi delle sottodirectory e dei file in una directory specificata. È possibile filtrare l'elenco dei nomi specificando un set di attributi di file. L'elenco dei nomi può includere lettere di unità mappate.
DlgDirSelectComboBoxEx Recupera la selezione corrente da una casella combinata riempita utilizzando la funzione DlgDirListComboBox. La selezione viene interpretata come lettera di unità, un file o un nome di directory.
GetComboBoxInfo Recupera informazioni sulla casella combinata specificata.

Macro

Argomento Contenuto
ComboBox_AddItemData Aggiunge i dati degli elementi all'elenco in una casella combinata nella posizione specificata. È possibile utilizzare questa macro o inviare il messaggio di CB_ADDSTRING in modo esplicito.
ComboBox_AddString Aggiunge una stringa a un elenco in una casella combinata. Se la casella combinata non ha lo stile CBS_SORT , la stringa viene aggiunta alla fine dell'elenco. In caso contrario, la stringa viene inserita nell'elenco e l'elenco viene ordinato. È possibile utilizzare questa macro o inviare il messaggio di CB_ADDSTRING in modo esplicito.
ComboBox_DeleteString Elimina l'elemento nella posizione specificata in un elenco in una casella combinata. È possibile utilizzare questa macro o inviare il messaggio di CB_DELETESTRING in modo esplicito.
ComboBox_Dir Aggiunge nomi all'elenco visualizzato da una casella combinata. La macro aggiunge i nomi di directory e file che corrispondono a una stringa e a un set di attributi di file specificati. Può anche aggiungere lettere di unità mappate all'elenco in una casella combinata. È possibile utilizzare questa macro o inviare il messaggio di CB_DIR in modo esplicito.
ComboBox_Enable Abilita o disabilita un controllo casella combinata.
ComboBox_FindItemData Trova il primo elemento in un elenco di caselle combinate con i dati dell'elemento specificati. È possibile utilizzare questa macro o inviare il messaggio di CB_FINDSTRING in modo esplicito.
ComboBox_FindString Trova la prima stringa in un elenco di caselle combinate che inizia con la stringa specificata. È possibile utilizzare questa macro o inviare il messaggio di CB_FINDSTRING in modo esplicito.
ComboBox_FindStringExact Trova la prima stringa in un elenco di caselle combinate che corrisponde esattamente alla stringa specificata, ad eccezione del fatto che la ricerca non fa distinzione tra maiuscole e minuscole. È possibile utilizzare questa macro o inviare il messaggio di CB_FINDSTRINGEXACT in modo esplicito.
ComboBox_GetCount Ottiene il numero di elementi nella casella di riepilogo di una casella combinata. È possibile utilizzare questa macro o inviare il messaggio di CB_GETCOUNT in modo esplicito.
ComboBox_GetCueBannerText Ottiene il testo del banner segnale visualizzato nel controllo di modifica di una casella combinata. Utilizzare questa macro o inviare il messaggio di CB_GETCUEBANNER in modo esplicito.
ComboBox_GetCurSel Ottiene l'indice dell'elemento attualmente selezionato in una casella combinata. È possibile utilizzare questa macro o inviare il messaggio CB_GETCURedizione Standard L in modo esplicito.
ComboBox_GetDroppedControlRect Recupera le coordinate dello schermo di una casella combinata nello stato di eliminazione. È possibile utilizzare questa macro o inviare il messaggio di CB_GETDROPPEDCONTROLRECT in modo esplicito.
ComboBox_GetDroppedState Verifica se l'elenco a discesa in un controllo casella combinata è visibile. È possibile utilizzare questa macro o inviare il messaggio di CB_GETDROPPEDSTATE in modo esplicito.
ComboBox_GetExtendedUI Verifica se una casella combinata usa l'interfaccia utente predefinita o l'interfaccia utente estesa. È possibile utilizzare questa macro o inviare il messaggio di CB_GETEXTENDEDUI in modo esplicito.
ComboBox_GetItemData Ottiene il valore definito dall'applicazione associato all'elemento di elenco specificato in una casella combinata. È possibile utilizzare questa macro o inviare il messaggio di CB_GETITEMDATA in modo esplicito.
ComboBox_GetItemHeight Recupera l'altezza delle voci di elenco in una casella combinata. È possibile utilizzare questa macro o inviare il messaggio di CB_GETITEMHEIGHT in modo esplicito.
ComboBox_GetLBText Ottiene una stringa da un elenco in una casella combinata. È possibile utilizzare questa macro o inviare il messaggio di CB_GETLBTEXT in modo esplicito.
ComboBox_GetLBTextLen Ottiene la lunghezza di una stringa nell'elenco in una casella combinata. È possibile utilizzare questa macro o inviare il messaggio di CB_GETLBTEXTLEN in modo esplicito.
ComboBox_GetMinVisible Ottiene il numero minimo di elementi visibili nell'elenco a discesa di una casella combinata.
ComboBox_GetText Recupera il testo da un controllo casella combinata.
ComboBox_GetTextLength Ottiene il numero di caratteri nel testo di una casella combinata.
ComboBox_InsertItemData Inserisce i dati degli elementi in un elenco in una casella combinata nella posizione specificata. È possibile utilizzare questa macro o inviare il messaggio CB_INedizione Standard RTSTRING in modo esplicito.
ComboBox_InsertString Aggiunge una stringa a un elenco in una casella combinata nella posizione specificata. È possibile utilizzare questa macro o inviare il messaggio CB_INedizione Standard RTSTRING in modo esplicito.
ComboBox_LimitText Limita la lunghezza del testo che l'utente può digitare nel controllo di modifica di una casella combinata. È possibile utilizzare questa macro o inviare il messaggio di CB_LIMITTEXT in modo esplicito.
ComboBox_ResetContent Rimuove tutti gli elementi dalla casella di riepilogo e il controllo di modifica di una casella combinata. È possibile utilizzare questa macro o inviare il messaggio CB_REedizione Standard TCONTENT in modo esplicito.
ComboBox_SelectItemData Cerca un elenco in una casella combinata per un elemento con i dati dell'elemento specificati. Se viene trovato un elemento corrispondente, l'elemento viene selezionato. È possibile utilizzare questa macro o inviare il messaggio CB_edizione Standard LECTSTRING in modo esplicito.
ComboBox_SelectString Cerca un elenco in una casella combinata per un elemento che inizia con i caratteri in una stringa specificata. Se viene trovato un elemento corrispondente, l'elemento viene selezionato. È possibile utilizzare questa macro o inviare il messaggio CB_edizione Standard LECTSTRING in modo esplicito.
ComboBox_SetCueBannerText Imposta il testo del banner segnale visualizzato per il controllo di modifica di una casella combinata.
ComboBox_SetCurSel Imposta l'elemento attualmente selezionato in una casella combinata. È possibile usare questa macro o inviare il messaggio CB_edizione Standard TCUR edizione Standard L in modo esplicito.
ComboBox_SetExtendedUI Seleziona l'interfaccia utente predefinita o l'interfaccia utente estesa per una casella combinata con lo stile CBS_DROPDOWN o CBS_DROPDOWNLIST. È possibile utilizzare questa macro o inviare il messaggio CB_edizione Standard TEXTENDEDUI in modo esplicito.
ComboBox_SetItemData Imposta il valore definito dall'applicazione associato all'elemento di elenco specificato in una casella combinata. È possibile utilizzare questa macro o inviare il messaggio CB_edizione Standard TITEMDATA in modo esplicito.
ComboBox_SetItemHeight Imposta l'altezza degli elementi dell'elenco o del campo di selezione in una casella combinata. È possibile utilizzare questa macro o inviare il messaggio CB_edizione Standard TITEMHEIGHT in modo esplicito.
ComboBox_SetMinVisible Imposta il numero minimo di elementi visibili nell'elenco a discesa di una casella combinata.
ComboBox_SetText Imposta il testo di una casella combinata.
ComboBox_ShowDropdown Visualizza o nasconde l'elenco in una casella combinata. È possibile utilizzare questa macro o inviare il messaggio di CB_SHOWDROPDOWN in modo esplicito.

Messaggi

Argomento Contenuto
CB_ADDSTRING Aggiunge una stringa alla casella di riepilogo di una casella combinata. Se la casella combinata non ha lo stile CBS_SORT , la stringa viene aggiunta alla fine dell'elenco. In caso contrario, la stringa viene inserita nell'elenco e l'elenco viene ordinato.
CB_DELETESTRING Elimina una stringa nella casella di riepilogo di una casella combinata.
CB_DIR Aggiunge nomi all'elenco visualizzato dalla casella combinata. Il messaggio aggiunge i nomi di directory e file che corrispondono a una stringa e a un set di attributi di file specificati. CB_DIR può anche aggiungere lettere di unità mappate all'elenco.
CB_FINDSTRING Cerca nella casella di riepilogo di una casella combinata un elemento che inizia con i caratteri in una stringa specificata.
CB_FINDSTRINGEXACT Trova la prima stringa della casella di riepilogo in una casella combinata corrispondente alla stringa specificata nel parametro lParam .
CB_GETCOMBOBOXINFO Ottiene informazioni sulla casella combinata specificata.
CB_GETCOUNT Ottiene il numero di elementi nella casella di riepilogo di una casella combinata.
CB_GETCUEBANNER Ottiene il testo del banner segnale visualizzato nel controllo di modifica di una casella combinata. Inviare questo messaggio in modo esplicito o utilizzando la macro ComboBox_GetCueBannerText.
CB_GETCURedizione Standard L Un'applicazione invia un messaggio CB_GETCURedizione Standard L per recuperare l'indice dell'elemento attualmente selezionato, se presente, nella casella di riepilogo di una casella combinata.
CB_GETDROPPEDCONTROLRECT Un'applicazione invia un messaggio CB_GETDROPPEDCONTROLRECT per recuperare le coordinate dello schermo di una casella combinata nello stato di eliminazione.
CB_GETDROPPEDSTATE Determina se la casella di riepilogo di una casella combinata viene eliminata.
CB_GETDROPPEDWIDTH Ottiene la larghezza minima consentita, in pixel, della casella di riepilogo di una casella combinata con lo stile CBS_DROPDOWN o CBS_DROPDOWNLIST.
CB_GETEDITedizione Standard L Ottiene le posizioni del carattere iniziale e finale della selezione corrente nel controllo di modifica di una casella combinata.
CB_GETEXTENDEDUI Determina se una casella combinata ha l'interfaccia utente predefinita o l'interfaccia utente estesa.
CB_GETHORIZONTALEXTENT Ottiene la larghezza, espressa in pixel, di cui è possibile scorrere orizzontalmente la casella di riepilogo (larghezza scorrevole). Questa opzione è applicabile solo se la casella di riepilogo ha una barra di scorrimento orizzontale.
CB_GETITEMDATA Un'applicazione invia un messaggio CB_GETITEMDATA a una casella combinata per recuperare il valore fornito dall'applicazione associato all'elemento specificato nella casella combinata.
CB_GETITEMHEIGHT Determina l'altezza degli elementi dell'elenco o del campo di selezione in una casella combinata.
CB_GETLBTEXT Ottiene una stringa dall'elenco di una casella combinata.
CB_GETLBTEXTLEN Ottiene la lunghezza, in caratteri, di una stringa nell'elenco di una casella combinata.
CB_GETLOCALE Ottiene le impostazioni locali correnti della casella combinata. Le impostazioni locali vengono utilizzate per determinare l'ordinamento corretto del testo visualizzato per le caselle combinate con lo stile e il testo CBS_SORT aggiunti utilizzando il messaggio di CB_ADDSTRING.
CB_GETMINVISIBLE Ottiene il numero minimo di elementi visibili nell'elenco a discesa di una casella combinata.
CB_GETTOPINDEX Un'applicazione invia il messaggio di CB_GETTOPINDEX per recuperare l'indice in base zero del primo elemento visibile nella parte casella di riepilogo di una casella combinata. Inizialmente, l'elemento con indice 0 si trova nella parte superiore della casella di riepilogo, ma se il contenuto della casella di riepilogo è stato scorrevole, un altro elemento potrebbe trovarsi nella parte superiore.
CB_INITSTORAGE Un'applicazione invia il messaggio CB_INITSTORAGE prima di aggiungere un numero elevato di elementi alla parte casella di riepilogo di una casella combinata. Questo messaggio alloca memoria per l'archiviazione degli elementi della casella di riepilogo.
CB_INedizione Standard RTSTRING Inserisce dati stringa o elemento nell'elenco di una casella combinata. A differenza del messaggio CB_ADDSTRING, il messaggio CB_INedizione Standard RTSTRING non determina l'ordinamento di un elenco con lo stile CBS_SORT.
CB_LIMITTEXT Limita la lunghezza del testo che l'utente può digitare nel controllo di modifica di una casella combinata.
CB_REedizione Standard TCONTENT Rimuove tutti gli elementi dalla casella di riepilogo e il controllo di modifica di una casella combinata.
CB_edizione Standard LECTSTRING Cerca nell'elenco di una casella combinata un elemento che inizia con i caratteri in una stringa specificata. Se viene trovato un elemento corrispondente, viene selezionato e copiato nel controllo di modifica.
CB_edizione Standard TCUEBANNER Imposta il testo del banner segnale visualizzato per il controllo di modifica di una casella combinata.
CB_edizione Standard TCUR edizione Standard L Un'applicazione invia un messaggio CB_edizione Standard TCUR edizione Standard L per selezionare una stringa nell'elenco di una casella combinata. Se necessario, l'elenco scorre la stringa nella visualizzazione. Il testo nel controllo di modifica della casella combinata cambia in modo da riflettere la nuova selezione e qualsiasi selezione precedente nell'elenco viene rimossa.
CB_edizione Standard TDROPPEDWIDTH Un'applicazione invia il messaggio CB_edizione Standard TDROPPEDWIDTH per impostare la larghezza massima consentita, in pixel, della casella di riepilogo di una casella combinata con lo stile CBS_DROPDOWN o CBS_DROPDOWNLIST.
CB_edizione Standard TEDIT edizione Standard L Un'applicazione invia un messaggio CB_edizione Standard TEDIT edizione Standard L per selezionare i caratteri nel controllo di modifica di una casella combinata.
CB_edizione Standard TEXTENDEDUI Un'applicazione invia un messaggio CB_edizione Standard TEXTENDEDUI per selezionare l'interfaccia utente predefinita o l'interfaccia utente estesa per una casella combinata con lo stile CBS_DROPDOWN o CBS_DROPDOWNLIST.
CB_edizione Standard THORIZONTALEXTENT Un'applicazione invia il messaggio CB_edizione Standard THORIZONTALEXTENT per impostare la larghezza, in pixel, in cui è possibile scorrere orizzontalmente una casella di riepilogo (larghezza scorrevole). Se la larghezza della casella di riepilogo è inferiore a questo valore, la barra di scorrimento orizzontale scorre orizzontalmente gli elementi nella casella di riepilogo. Se la larghezza della casella di riepilogo è uguale o maggiore di questo valore, la barra di scorrimento orizzontale è nascosta o, se la casella combinata ha lo stile CBS_DISABLENOSCROLL , disabilitato.
CB_edizione Standard TITEMDATA Un'applicazione invia un messaggio CB_edizione Standard TITEMDATA per impostare il valore associato all'elemento specificato in una casella combinata.
CB_edizione Standard TITEMHEIGHT Un'applicazione invia un messaggio CB_edizione Standard TITEMHEIGHT per impostare l'altezza degli elementi dell'elenco o il campo di selezione in una casella combinata.
CB_edizione Standard TLOCALE Un'applicazione invia un messaggio CB_edizione Standard TLOCALE per impostare le impostazioni locali correnti della casella combinata. Se la casella combinata ha lo stile e le stringhe CBS_SORT vengono aggiunte utilizzando CB_ADDSTRING, le impostazioni locali di una casella combinata influiscono sulla modalità di ordinamento degli elementi dell'elenco.
CB_edizione Standard TMINVISIBLE Un'applicazione invia un messaggio CB_edizione Standard TMINVISIBLE per impostare il numero minimo di elementi visibili nell'elenco a discesa di una casella combinata.
CB_edizione Standard TTOPINDEX Un'applicazione invia il messaggio CB_edizione Standard TTOPINDEX per assicurarsi che un particolare elemento sia visibile nella casella di riepilogo di una casella combinata. Il sistema scorre il contenuto della casella di riepilogo in modo che l'elemento specificato venga visualizzato nella parte superiore della casella di riepilogo o che sia stato raggiunto l'intervallo di scorrimento massimo.
CB_SHOWDROPDOWN Un'applicazione invia un messaggio di CB_SHOWDROPDOWN per visualizzare o nascondere la casella di riepilogo di una casella combinata con lo stile CBS_DROPDOWN o CBS_DROPDOWNLIST.

Notifications

Argomento Contenuto
CBN_CLOedizione Standard UP Il codice di notifica CBN_CLOedizione Standard UP viene inviato quando la casella di riepilogo di una casella combinata è stata chiusa. La finestra padre della casella combinata riceve questo codice di notifica tramite il messaggio di WM_COMMAND.
CBN_DBLCLK Il codice di notifica CBN_DBLCLK viene inviato quando l'utente fa doppio clic su una stringa nella casella di riepilogo di una casella combinata. La finestra padre della casella combinata riceve questo codice di notifica tramite il messaggio di WM_COMMAND.
CBN_DROPDOWN Il codice di notifica CBN_DROPDOWN viene inviato quando la casella di riepilogo di una casella combinata sta per essere resa visibile. La finestra padre della casella combinata riceve questo codice di notifica tramite il messaggio di WM_COMMAND.
CBN_EDITCHANGE Il codice di notifica CBN_EDITCHANGE viene inviato dopo che l'utente ha eseguito un'azione che potrebbe aver modificato il testo nella parte del controllo di modifica di una casella combinata. A differenza del codice di notifica CBN_EDITUPDATE , questo codice di notifica viene inviato dopo che il sistema aggiorna la schermata. La finestra padre della casella combinata riceve questo codice di notifica tramite il messaggio di WM_COMMAND.
CBN_EDITUPDATE Il codice di notifica CBN_EDITUPDATE viene inviato quando la parte di controllo di modifica di una casella combinata sta per visualizzare testo modificato. Questo codice di notifica viene inviato dopo che il controllo ha formattato il testo, ma prima di visualizzare il testo. La finestra padre della casella combinata riceve questo codice di notifica tramite il messaggio di WM_COMMAND.
CBN_ERRSPACE Il codice di notifica CBN_ERRSPACE viene inviato quando una casella combinata non può allocare memoria sufficiente per soddisfare una richiesta specifica. La finestra padre della casella combinata riceve questo codice di notifica tramite il messaggio di WM_COMMAND.
CBN_KILLFOCUS Il codice di notifica CBN_KILLFOCUS viene inviato quando una casella combinata perde lo stato attivo della tastiera. La finestra padre della casella combinata riceve questo codice di notifica tramite il messaggio di WM_COMMAND.
CBN_edizione Standard LCHANGE Il codice di notifica CBN_edizione Standard LCHANGE viene inviato quando l'utente modifica la selezione corrente nella casella di riepilogo di una casella combinata. L'utente può modificare la selezione facendo clic nella casella di riepilogo o usando i tasti di direzione. La finestra padre della casella combinata riceve questa notifica sotto forma di messaggio di WM_COMMAND con CBN_edizione Standard LCHANGE nella parola ad ordine elevato del parametro wParam.
CBN_edizione Standard LENDCANCEL Il codice di notifica CBN_edizione Standard LENDCANCEL viene inviato quando l'utente seleziona un elemento, ma seleziona un altro controllo o chiude la finestra di dialogo. Indica che la selezione iniziale dell'utente deve essere ignorata. La finestra padre della casella combinata riceve questo codice di notifica tramite il messaggio di WM_COMMAND.
CBN_edizione Standard LENDOK Il codice di notifica CBN_edizione Standard LENDOK viene inviato quando l'utente seleziona una voce di elenco oppure seleziona un elemento e quindi chiude l'elenco. Indica che la selezione dell'utente deve essere elaborata. La finestra padre della casella combinata riceve questo codice di notifica tramite il messaggio di WM_COMMAND.
CBN_edizione Standard TFOCUS Il codice di notifica CBN_edizione Standard TFOCUS viene inviato quando una casella combinata riceve lo stato attivo della tastiera. La finestra padre della casella combinata riceve questo codice di notifica tramite il messaggio di WM_COMMAND.
WM_COMPAREITEM Il sistema invia il messaggio di WM_COMPAREITEM per determinare la posizione relativa di un nuovo elemento nell'elenco ordinato di una casella combinata o di una casella di riepilogo disegnata dal proprietario. Ogni volta che l'applicazione aggiunge un nuovo elemento, il sistema invia il messaggio al proprietario di una casella combinata o di una casella di riepilogo creata con lo stile CBS_SORT o LBS_SORT.
WM_DRAWITEM Il messaggio WM_DRAWITEM viene inviato alla finestra padre di un pulsante disegnato dal proprietario, di una casella combinata, di una casella di riepilogo o di un menu quando un aspetto visivo del pulsante, della casella combinata, della casella di riepilogo o del menu è stato modificato.
WM_MEASUREITEM Il messaggio WM_MEASUREITEM viene inviato alla finestra proprietario di una casella combinata, di una casella di riepilogo, di un controllo visualizzazione elenco o di una voce di menu quando viene creato il controllo o il menu.

Strutture

Argomento Contenuto
COMBOBOXINFO Contiene informazioni sullo stato della casella combinata.
COMPAREITEMSTRUCT Fornisce gli identificatori e i dati forniti dall'applicazione per due elementi in una casella di riepilogo ordinata, disegnata dal proprietario o in una casella combinata.
DRAWITEMSTRUCT Fornisce le informazioni necessarie alla finestra del proprietario per determinare come disegnare un controllo o una voce di menu disegnata dal proprietario. La finestra proprietario del controllo o della voce di menu disegnata dal proprietario riceve un puntatore a questa struttura come parametro lParam del messaggio WM_DRAWITEM .
MEASUREITEMSTRUCT Informa il sistema delle dimensioni di un controllo o di una voce di menu disegnata dal proprietario. In questo modo il sistema può elaborare correttamente l'interazione dell'utente con il controllo.

Costanti

Argomento Contenuto
Stili casella combinata Per creare una casella combinata usando la funzione CreateWindow o CreateWindowEx, specificare la classe COMBOBOX, le costanti di stile della finestra appropriate e una combinazione degli stili casella combinata seguenti.