Condividi tramite


Pulsante (controlli Di Windows)

Questa sezione contiene informazioni sugli elementi di programmazione usati con i controlli pulsante. Un pulsante è un controllo che l'utente può fare clic per fornire l'input a un'applicazione.

Panoramiche

Argomento Contenuto
messaggi pulsante In questo argomento vengono illustrati i messaggi usati con i pulsanti.
degli stati dei pulsanti Questa sezione illustra come la selezione di un pulsante modifica lo stato e il modo in cui l'applicazione deve rispondere.
tipi di pulsanti In questo argomento vengono illustrati i diversi tipi di pulsanti.
uso di pulsanti Questa sezione illustra come eseguire determinate attività associate ai pulsanti.

Funzioni

Argomento Contenuto
CheckDlgButton Modifica lo stato di controllo di un controllo pulsante.
CheckRadioButton Aggiunge un segno di spunta a (controlla) un pulsante di opzione specificato in un gruppo e rimuove un segno di spunta da (cancella) tutti gli altri pulsanti di opzione del gruppo.
IsDlgButtonChecked La funzione IsDlgButtonChecked determina se un controllo pulsante è selezionato o se un controllo pulsante a tre stati è selezionato, deselezionato o indeterminato.

Macro

Argomento Contenuto
Button_Enable Abilita o disabilita un pulsante.
Button_GetCheck Ottiene lo stato di controllo di un pulsante di opzione o di una casella di controllo. È possibile utilizzare questa macro o inviare il messaggio di BM_GETCHECK in modo esplicito.
Button_GetIdealSize Ottiene le dimensioni del pulsante che meglio si adatta al testo e all'immagine, se è presente un elenco di immagini. È possibile utilizzare questa macro o inviare il messaggio di BCM_GETIDEALSIZE in modo esplicito.
Button_GetImageList Ottiene la struttura BUTTON_IMAGELIST che descrive l'elenco di immagini impostato per un controllo pulsante. È possibile utilizzare questa macro o inviare il messaggio di BCM_GETIMAGELIST in modo esplicito.
Button_GetNote Ottiene il testo della nota associata a un pulsante di collegamento di comando. È possibile utilizzare questa macro o inviare il messaggio di BCM_GETNOTE in modo esplicito.
Button_GetNoteLength Ottiene la lunghezza del testo della nota che può essere visualizzato nella descrizione di un collegamento di comando. Utilizzare questa macro o inviare il messaggio di BCM_GETNOTELENGTH in modo esplicito.
Button_GetSplitInfo Ottiene informazioni per un controllo pulsante di divisione specificato. Utilizzare questa macro o inviare il messaggio di BCM_GETSPLITINFO in modo esplicito.
Button_GetState Ottiene lo stato di controllo di un pulsante di opzione o di una casella di controllo. È possibile utilizzare questa macro o inviare il messaggio di BM_GETSTATE in modo esplicito.
Button_GetText Ottiene il testo di un pulsante.
Button_GetTextLength Ottiene il numero di caratteri nel testo di un pulsante.
Button_GetTextMargin Ottiene i margini utilizzati per disegnare testo in un controllo pulsante. È possibile utilizzare questa macro o inviare il messaggio di BCM_GETTEXTMARGIN in modo esplicito.
Button_SetCheck Imposta lo stato di controllo di un pulsante di opzione o di una casella di controllo. È possibile utilizzare questa macro o inviare il messaggio di BM_SETCHECK in modo esplicito.
Button_SetDropDownState Imposta lo stato dell'elenco a discesa per un pulsante specificato con lo stile di BS_SPLITBUTTON. Utilizzare questa macro o inviare il messaggio di BCM_SETDROPDOWNSTATE in modo esplicito.
Button_SetElevationRequiredState Imposta lo stato di elevazione richiesto per un pulsante o un collegamento di comando specificato per visualizzare un'icona con privilegi elevati. Utilizzare questa macro o inviare il messaggio di BCM_SETSHIELD in modo esplicito.
Button_SetImageList Assegna un elenco di immagini a un controllo pulsante. È possibile utilizzare questa macro o inviare il messaggio di BCM_SETIMAGELIST in modo esplicito.
Button_SetNote Imposta il testo della nota associata a un pulsante di collegamento di comando specificato. È possibile utilizzare questa macro o inviare il messaggio di BCM_SETNOTE in modo esplicito.
Button_SetSplitInfo Imposta le informazioni per un controllo pulsante di divisione specificato. Utilizzare questa macro o inviare il messaggio di BCM_SETSPLITINFO in modo esplicito.
Button_SetState Imposta lo stato di evidenziazione di un pulsante. Lo stato di evidenziazione indica se il pulsante è evidenziato come se l'utente lo avesse premuto. È possibile utilizzare questa macro o inviare il messaggio di BM_SETSTATE in modo esplicito.
Button_SetStyle Imposta lo stile di un pulsante. È possibile utilizzare questa macro o inviare il messaggio di BM_SETSTYLE in modo esplicito.
Button_SetText Imposta il testo di un pulsante.
Button_SetTextMargin Imposta i margini per il disegno di testo in un controllo pulsante. È possibile utilizzare questa macro o inviare il messaggio di BCM_SETTEXTMARGIN in modo esplicito.

Messaggi

Argomento Contenuto
BCM_GETIDEALSIZE Ottiene le dimensioni del pulsante che meglio si adatta al testo e all'immagine, se è presente un elenco di immagini. È possibile inviare questo messaggio in modo esplicito o utilizzare la macro Button_GetIdealSize.
BCM_GETIMAGELIST Ottiene la struttura BUTTON_IMAGELIST che descrive l'elenco di immagini assegnato a un controllo pulsante. È possibile inviare questo messaggio in modo esplicito o usare la macro Button_GetImageList.
BCM_GETNOTE Ottiene il testo della nota associata a un pulsante di collegamento di comando. È possibile inviare questo messaggio in modo esplicito o utilizzare la macro Button_GetNote.
BCM_GETNOTELENGTH Ottiene la lunghezza del testo della nota che può essere visualizzato nella descrizione di un pulsante di collegamento di comando. Inviare questo messaggio in modo esplicito o utilizzando la macro Button_GetNoteLength.
BCM_GETSPLITINFO Ottiene informazioni per un controllo pulsante di divisione. Inviare questo messaggio in modo esplicito o utilizzando la macro Button_GetSplitInfo.
BCM_GETTEXTMARGIN Ottiene i margini utilizzati per disegnare testo in un controllo pulsante. È possibile inviare questo messaggio in modo esplicito o usare la macro Button_GetTextMargin.
BCM_SETDROPDOWNSTATE Imposta lo stato dell'elenco a discesa per un pulsante con stile TBSTYLE_DROPDOWN. Inviare questo messaggio in modo esplicito o tramite la macro Button_SetDropDownState.
BCM_SETIMAGELIST Assegna un elenco di immagini a un controllo pulsante. È possibile inviare questo messaggio in modo esplicito o usare la macro Button_SetImageList.
BCM_SETNOTE Imposta il testo della nota associata a un pulsante di collegamento di comando. È possibile inviare questo messaggio in modo esplicito o usare la macro Button_SetNote.
BCM_SETSHIELD Imposta lo stato di elevazione richiesto per un pulsante o un collegamento di comando specificato per visualizzare un'icona con privilegi elevati. Inviare questo messaggio in modo esplicito o tramite la macro Button_SetElevationRequiredState.
BCM_SETSPLITINFO Imposta le informazioni per un controllo pulsante di divisione. Inviare questo messaggio in modo esplicito o tramite la macro Button_SetSplitInfo.
BCM_SETTEXTMARGIN Il messaggio BCM_SETTEXTMARGIN imposta i margini per disegnare testo in un controllo pulsante.
BM_CLICK Simula l'utente che fa clic su un pulsante. Questo messaggio fa sì che il pulsante riceva i messaggi WM_LBUTTONDOWN e WM_LBUTTONUP e la finestra padre del pulsante riceva un codice di notifica BN_CLICKED.
BM_GETCHECK Ottiene lo stato di controllo di un pulsante di opzione o di una casella di controllo. È possibile inviare questo messaggio in modo esplicito o utilizzare la macro Button_GetCheck.
BM_GETIMAGE Recupera un handle per l'immagine (icona o bitmap) associata al pulsante.
BM_GETSTATE Recupera lo stato di un pulsante o di una casella di controllo. È possibile inviare questo messaggio in modo esplicito o utilizzare la macro Button_GetState.
BM_SETCHECK Imposta lo stato di controllo di un pulsante di opzione o di una casella di controllo. È possibile inviare questo messaggio in modo esplicito o usando la macro Button_SetCheck.
BM_SETDONTCLICK Imposta un flag su un pulsante di opzione che controlla la generazione di messaggi BN_CLICKED quando il pulsante riceve lo stato attivo.
BM_SETIMAGE Associa una nuova immagine (icona o bitmap) al pulsante.
BM_SETSTATE Imposta lo stato di evidenziazione di un pulsante. Lo stato di evidenziazione indica se il pulsante è evidenziato come se l'utente lo avesse premuto. È possibile inviare questo messaggio in modo esplicito o usare la macro Button_SetState.
BM_SETSTYLE Imposta lo stile di un pulsante. È possibile inviare questo messaggio in modo esplicito o utilizzare la macro Button_SetStyle.

Notifiche

Argomento Contenuto
BCN_DROPDOWN Inviato quando l'utente fa clic su una freccia a discesa su un pulsante. La finestra padre del controllo riceve questo codice di notifica sotto forma di messaggio di WM_NOTIFY.
BCN_HOTITEMCHANGE Notifica al proprietario del controllo pulsante che il mouse sta immettendo o lasciando l'area client del controllo pulsante. Il controllo pulsante invia questo codice di notifica sotto forma di messaggio di WM_NOTIFY.
BN_CLICKED Inviato quando l'utente fa clic su un pulsante.
La finestra padre del pulsante riceve il codice di notifica BN_CLICKED tramite il messaggio di WM_COMMAND.
BN_DBLCLK Inviato quando l'utente fa doppio clic su un pulsante. Questo codice di notifica viene inviato automaticamente per i pulsanti BS_USERBUTTON, BS_RADIOBUTTONe BS_OWNERDRAW. Altri tipi di pulsante inviano BN_DBLCLK solo se hanno lo stile BS_NOTIFY.
La finestra padre del pulsante riceve il codice di notifica BN_DBLCLK tramite il messaggio di WM_COMMAND.
BN_DISABLE Inviato quando un pulsante è disabilitato. Nota: Questo codice di notifica viene fornito solo per compatibilità con le versioni a 16 bit di Windows precedenti alla versione 3.0. Le applicazioni devono usare lo stile del pulsante BS_OWNERDRAW e la strutturaDRAWITEMSTRUCT per questa attività.
La finestra padre del pulsante riceve il codice di notifica BN_DISABLE tramite il messaggio di WM_COMMAND.
BN_DOUBLECLICKED Inviato quando l'utente fa doppio clic su un pulsante. Questo codice di notifica viene inviato automaticamente per i pulsanti BS_USERBUTTON, BS_RADIOBUTTONe BS_OWNERDRAW. Altri tipi di pulsante inviano BN_DOUBLECLICKED solo se hanno lo stile BS_NOTIFY.
La finestra padre del pulsante riceve il codice di notifica BN_DOUBLECLICKED tramite il messaggio di WM_COMMAND.
BN_HILITE Inviato quando l'utente seleziona un pulsante. Nota: Questo codice di notifica viene fornito solo per compatibilità con le versioni a 16 bit di Windows precedenti alla versione 3.0. Le applicazioni devono usare lo stile del pulsante BS_OWNERDRAW e la strutturaDRAWITEMSTRUCT per questa attività.
La finestra padre del pulsante riceve il codice di notifica BN_HILITE tramite il messaggio di WM_COMMAND.
BN_KILLFOCUS Inviato quando un pulsante perde lo stato attivo della tastiera. Per inviare questo codice di notifica, il pulsante deve avere lo stile BS_NOTIFY.
La finestra padre del pulsante riceve il codice di notifica BN_KILLFOCUS tramite il messaggio di WM_COMMAND.
BN_PAINT Inviato quando deve essere disegnato un pulsante. Nota: Questo codice di notifica viene fornito solo per compatibilità con le versioni a 16 bit di Windows precedenti alla versione 3.0. Le applicazioni devono usare lo stile del pulsante BS_OWNERDRAW e la strutturaDRAWITEMSTRUCT per questa attività.
La finestra padre del pulsante riceve il codice di notifica BN_PAINT tramite il messaggio di WM_COMMAND.
BN_PUSHED Inviato quando lo stato di push di un pulsante è impostato su push. Nota: Questo codice di notifica viene fornito solo per compatibilità con le versioni a 16 bit di Windows precedenti alla versione 3.0. Le applicazioni devono usare lo stile del pulsante BS_OWNERDRAW e la strutturaDRAWITEMSTRUCT per questa attività.
La finestra padre del pulsante riceve il codice di notifica BN_PUSHED tramite il messaggio di WM_COMMAND.
BN_SETFOCUS Inviato quando un pulsante riceve lo stato attivo della tastiera. Per inviare questo codice di notifica, il pulsante deve avere lo stile BS_NOTIFY.
La finestra padre del pulsante riceve il codice di notifica BN_SETFOCUS tramite il messaggio di WM_COMMAND.
BN_UNHILITE Inviato quando l'evidenziazione deve essere rimossa da un pulsante. Nota: Questo codice di notifica viene fornito solo per compatibilità con le versioni a 16 bit di Windows precedenti alla versione 3.0. Le applicazioni devono usare lo stile del pulsante BS_OWNERDRAW e la strutturaDRAWITEMSTRUCT per questa attività.
La finestra padre del pulsante riceve il codice di notifica BN_UNHILITE tramite il messaggio di WM_COMMAND.
BN_UNPUSHED Inviato quando lo stato di push di un pulsante è impostato su non crittografato. Nota: Questo codice di notifica viene fornito solo per compatibilità con le versioni a 16 bit di Windows precedenti alla versione 3.0. Le applicazioni devono usare lo stile del pulsante BS_OWNERDRAW e la strutturaDRAWITEMSTRUCT per questa attività.
La finestra padre del pulsante riceve il codice di notifica BN_UNPUSHED tramite il messaggio di WM_COMMAND.
NM_CUSTOMDRAW (pulsante) Notifica alla finestra padre di un controllo pulsante sulle operazioni di disegno personalizzate sul pulsante.
Il controllo pulsante invia questo codice di notifica sotto forma di messaggio di WM_NOTIFY.
WM_CTLCOLORBTN Il messaggio WM_CTLCOLORBTN viene inviato alla finestra padre di un pulsante prima di disegnare il pulsante. La finestra padre può modificare il testo e i colori di sfondo del pulsante. Tuttavia, solo i pulsanti disegnati dal proprietario rispondono all'elaborazione del messaggio nella finestra padre.

Strutture

Argomento Contenuto
BUTTON_IMAGELIST Contiene informazioni su un elenco di immagini utilizzato con un controllo pulsante.
BUTTON_SPLITINFO Contiene informazioni che definiscono un pulsante di divisione (BS_SPLITBUTTON e stili di BS_DEFSPLITBUTTON). Usato con i messaggi BCM_GETSPLITINFO e BCM_SETSPLITINFO.
NMBCDROPDOWN Contiene informazioni su una notifica di BCN_DROPDOWN.
NMBCHOTITEM Contiene informazioni sullo spostamento del mouse su un controllo pulsante.

Costanti

Argomento Contenuto
stili pulsante Specifica una combinazione di stili di pulsante. Se si crea un pulsante usando la classe BUTTON con la CreateWindow o funzione CreateWindowEx, è possibile specificare uno degli stili dei pulsanti elencati di seguito.