Tipi di pulsanti

Esistono diversi tipi di pulsanti e uno o più stili di pulsante per distinguere tra i pulsanti dello stesso tipo.

Questo documento illustra gli argomenti seguenti.

Tipi e stili dei pulsanti

Un pulsante appartiene a un tipo e può avere stili aggiuntivi che ne influiscono sull'aspetto e sul comportamento. Per una tabella degli stili dei pulsanti, vedere Stili pulsante.

La schermata seguente mostra i diversi tipi di pulsanti.

screen shot of a dialog box that shows examples of eight types of buttons

Lo screenshot mostra come visualizzare i pulsanti in Windows Vista. L'aspetto varia in base a versioni diverse del sistema operativo e in base al tema impostato dall'utente.

Si notino i punti seguenti relativi all'illustrazione:

  • La casella di controllo a tre stati viene visualizzata nello stato indeterminato. Se selezionata o deselezionata, è simile a una normale casella di controllo.
  • Il pulsante di pressione grande è stato impostato sullo stato premuto a livello di codice (inviando il messaggio BM_edizione Standard TSTATE), in modo che mantenga l'aspetto anche quando non viene fatto clic.
  • Nello stile di visualizzazione visualizzato, lo sfondo del pulsante di pressione predefinito (o un altro pulsante di pressione con lo stato attivo di input) scorre tra blu e grigio.

Caselle

Una casella di controllo è costituita da una casella quadrata e da un'etichetta, un'icona o una bitmap definita dall'applicazione che indica una scelta che l'utente può effettuare selezionando il pulsante. Le applicazioni in genere visualizzano caselle di controllo per consentire all'utente di scegliere una o più opzioni che non si escludono a vicenda.

Una casella di controllo può essere uno dei quattro stili: standard, automatico, a tre stati e automatico, come definito rispettivamente dalle costanti BS_CHECKBOX, BS_AUTOCHECKBOX, BS_3STATE e BS_AUTO3STATE. Ogni stile può assumere due stati di controllo: selezionato (un segno di spunta all'interno della casella) o deselezionato (nessun segno di spunta). Inoltre, una casella di controllo a tre stati può presupporre uno stato indeterminato (una casella ombreggiata all'interno della casella di controllo), che potrebbe indicare che l'utente non ha fatto una scelta. Facendo ripetutamente clic su una casella di controllo standard o automatica, viene disattivata per deselezionarla e tornare indietro. Facendo ripetutamente clic su una casella di controllo a tre stati, si attiva o disattiva la casella di controllo da selezionata a deselezionata per indeterminate e quindi ripete il ciclo.

Quando l'utente fa clic su una casella di controllo (di qualsiasi stile), la casella di controllo riceve lo stato attivo della tastiera. Il sistema invia la finestra padre della casella di controllo a un messaggio WM_COMMAND contenente il codice di notifica BN_CLICKED. La finestra padre non deve gestire questo messaggio se proviene da una casella di controllo automatica o da una casella di controllo a tre stati automatici, perché il sistema imposta automaticamente lo stato di controllo per tali stili. Tuttavia, la finestra padre deve gestire il messaggio se proviene da una casella di controllo non automatica o da una casella di controllo a tre stati, perché la finestra padre è responsabile dell'impostazione dello stato di controllo per tali stili. Indipendentemente dallo stile della casella di controllo, il sistema aggiorna automaticamente la casella di controllo dopo la modifica dello stato.

L'applicazione può verificare lo stato di una casella di controllo usando la funzione IsDlgButtonChecked.

Caselle di gruppo

Una casella di gruppo è un rettangolo che circonda un set di controlli, ad esempio caselle di controllo o pulsanti di opzione, con un'etichetta di testo definita dall'applicazione nell'angolo superiore sinistro. L'unico scopo di una casella di gruppo è organizzare i controlli correlati a uno scopo comune (in genere indicato dall'etichetta). La casella di gruppo ha un solo stile, definito dalla costante BS_GROUPBOX. Poiché non è possibile selezionare una casella di gruppo, non ha stato di controllo, stato attivo o stato push.

Pulsanti

Un pulsante di scelta è un rettangolo contenente un'etichetta di testo definita dall'applicazione, un'icona o una bitmap che indica le operazioni del pulsante quando l'utente lo seleziona.

Un pulsante di pressione può essere uno di due stili, standard o predefinito, come definito dalle costanti BS_PUSHBUTTON e BS_DEFPUSHBUTTON. Un pulsante di pressione standard viene in genere usato per avviare un'operazione. Riceve lo stato attivo della tastiera quando l'utente lo fa clic. Un pulsante di scelta rapida predefinito viene in genere usato per indicare la scelta più comune o predefinita, ad esempio la chiusura della finestra di dialogo. Si tratta di un pulsante che l'utente può selezionare semplicemente premendo INVIO quando nessun altro pulsante di pressione nella finestra di dialogo ha lo stato attivo per l'input.

Quando l'utente fa clic su un pulsante di pressione, riceve lo stato attivo della tastiera. Il sistema invia la finestra padre del pulsante a un messaggio di WM_COMMAND che contiene il codice di notifica BN_CLICKED .

Il pulsante di divisione è un tipo speciale di pulsante di pressione introdotto in Windows Vista e versione 6.00. Un pulsante di divisione è suddiviso in due parti. La parte principale funziona come un pulsante di pressione normale o predefinito. La seconda parte ha una freccia rivolta verso il basso. In genere viene visualizzato un menu quando si fa clic sulla freccia.

Un pulsante di divisione ha lo stile BS_SPLITBUTTON o lo stile BS_DEFSPLITBUTTON se è il pulsante predefinito in una finestra di dialogo. È possibile modificare l'aspetto del pulsante utilizzando il messaggio BCM_edizione Standard TSPLITINFO o la macro Button_SetSplitInfo corrispondente.

Quando l'utente fa clic sulla parte principale del pulsante di divisione, invia una notifica BN_CLICKED proprio come un normale pulsante di pressione. Tuttavia, quando l'utente fa clic sulla freccia giù, invia una notifica di BCN_DROPDOWN . È responsabilità dell'applicazione visualizzare un menu in risposta a BCN_DROPDOWN.

Windows Vista e versione 6.00 hanno introdotto anche un altro tipo di pulsante di pressione, il collegamento di comando. Visivamente, un collegamento di comando è molto diverso da un normale pulsante di pressione, ma ha le stesse funzionalità. Un collegamento di comando visualizza in genere un'icona a forma di freccia, una riga di testo e un testo aggiuntivo in un tipo di carattere più piccolo.

Pulsanti di opzione

Un pulsante di opzione (detto anche pulsante di opzione) è costituito da un pulsante rotondo e da un'etichetta, un'icona o una bitmap definita dall'applicazione che indica una scelta che l'utente può effettuare selezionando il pulsante. Un'applicazione usa in genere pulsanti di opzione in una casella di gruppo per consentire all'utente di scegliere una delle opzioni correlate ma che si escludono a vicenda.

Un pulsante di opzione può essere uno dei due stili: standard o automatico, come definito dalle costanti di stile BS_RADIOBUTTON e BS_AUTORADIOBUTTON. Ogni stile può assumere due stati di controllo: selezionato (un punto nel pulsante) o deselezionato (nessun punto nel pulsante).

Quando l'utente seleziona uno degli stati, il pulsante di opzione riceve lo stato attivo della tastiera. Il sistema invia la finestra padre del pulsante a un messaggio WM_COMMAND contenente il codice di notifica BN_CLICKED . La finestra padre non deve gestire questo messaggio se proviene da un pulsante di opzione automatico, perché il sistema imposta automaticamente lo stato di controllo per tale stile. Tuttavia, la finestra padre deve gestire il messaggio se proviene da un pulsante di opzione non automatico, perché la finestra padre è responsabile dell'impostazione dello stato di controllo per tale stile. Indipendentemente dallo stile del pulsante di opzione, il sistema aggiorna automaticamente il pulsante man mano che cambia lo stato.

I pulsanti di opzione sono disposti in gruppi e un solo pulsante nel gruppo può essere controllato in qualsiasi momento. Se il flag WS_GROUP è impostato per qualsiasi pulsante di opzione, tale pulsante è il primo pulsante di un gruppo e tutti i pulsanti che lo seguono immediatamente nell'ordine di tabulazione (ma non hanno il flag WS_GROUP ) fanno parte del relativo gruppo. Se nessun pulsante di opzione ha il flag WS_GROUP , tutti i pulsanti di opzione nella finestra di dialogo vengono considerati come un singolo gruppo.

L'applicazione può verificare se un pulsante di opzione è selezionato usando la funzione IsDlgButtonChecked.

Riferimento

Stili dei pulsanti

Concettuale

Uso dei pulsanti