Types de boutons

Il existe plusieurs types de boutons et un ou plusieurs styles de boutons pour faire la distinction entre les boutons du même type.

Ce document présente les rubriques suivantes.

Types de boutons et styles

Un bouton appartient à un type et peut avoir des styles supplémentaires qui affectent son apparence et son comportement. Pour obtenir un tableau de styles de bouton, consultez Styles de bouton.

La capture d’écran suivante montre les différents types de boutons.

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

La capture d’écran montre comment les boutons peuvent apparaître dans Windows Vista. L’apparence varie selon les différentes versions du système d’exploitation et en fonction du thème défini par l’utilisateur.

Notez les points suivants sur l’illustration :

  • La case à cocher à trois états s’affiche dans l’état indéterminé. Lorsqu’elle est cochée ou décochée, elle ressemble à une case à cocher normale.
  • Le bouton d’appui volumineux a été défini par programmation sur l’état poussé (en envoyant le message BM_SETSTATE ), afin qu’il conserve son apparence même lorsqu’il n’est pas cliqué.
  • Dans le style visuel affiché, l’arrière-plan du bouton Push par défaut (ou un autre bouton d’appui qui a le focus d’entrée) passe entre bleu et gris.

Cases à cocher

Une case à cocher se compose d’une case carrée et d’une étiquette, d’une icône ou d’une bitmap définie par l’application qui indique un choix que l’utilisateur peut effectuer en sélectionnant le bouton. Les applications affichent généralement des cases à cocher pour permettre à l’utilisateur de choisir une ou plusieurs options qui ne s’excluent pas mutuellement.

Une case à cocher peut être l’un des quatre styles suivants : standard, automatique, trois états et trois états automatiques, tels que définis par les constantes BS_CHECKBOX, BS_AUTOCHECKBOX, BS_3STATE et BS_AUTO3STATE, respectivement. Chaque style peut supposer deux états de coche : activé (coche à l’intérieur de la zone) ou effacé (aucune coche). En outre, une case à cocher à trois états peut supposer un état indéterminé (zone ombrée à l’intérieur de la case à cocher), ce qui peut indiquer que l’utilisateur n’a pas fait de choix. Le fait de cliquer plusieurs fois sur une case à cocher standard ou automatique le désactive pour le désactiver et revenir à nouveau. Lorsque vous cliquez plusieurs fois sur une case à cocher à trois états, la désactive jusqu’à ce qu’elle soit désactivée pour être indéterminée, puis répète le cycle.

Lorsque l’utilisateur clique sur une case à cocher (de n’importe quel style), la case à cocher reçoit le focus clavier. Le système envoie la fenêtre parente de la case à cocher un message WM_COMMAND contenant le code de notification BN_CLICKED . La fenêtre parente n’a pas besoin de gérer ce message s’il provient d’une case à cocher automatique ou d’une case à cocher automatique à trois états, car le système définit automatiquement l’état de vérification pour ces styles. Toutefois, la fenêtre parente doit gérer le message s’il provient d’une case à cocher non automatique ou d’une case à cocher à trois états, car la fenêtre parente est chargée de définir l’état de vérification pour ces styles. Quel que soit le style de case à cocher, le système repeint automatiquement la case à cocher une fois son état modifié.

L’application peut vérifier l’état d’une case à cocher à l’aide de la fonction IsDlgButtonChecked .

Zones de groupe

Une zone de groupe est un rectangle qui entoure un ensemble de contrôles, tels que des cases à cocher ou des cases d’option, avec une étiquette de texte définie par l’application dans son coin supérieur gauche. Le seul objectif d’une zone de groupe est d’organiser les contrôles liés à un objectif commun (généralement indiqué par l’étiquette). La zone de groupe n’a qu’un seul style, défini par la constante BS_GROUPBOX. Étant donné qu’une zone de groupe ne peut pas être sélectionnée, elle n’a pas d’état de vérification, d’état de focus ou d’état Push.

Boutons-poussoirs

Un bouton d’appui est un rectangle contenant une étiquette de texte définie par l’application, une icône ou une bitmap qui indique ce que fait le bouton lorsque l’utilisateur le sélectionne.

Un bouton d’appui peut être l’un des deux styles, standard ou par défaut, tel que défini par les constantes BS_PUSHBUTTON et BS_DEFPUSHBUTTON. Un bouton push standard est généralement utilisé pour démarrer une opération. Il reçoit le focus clavier lorsque l’utilisateur clique dessus. Un bouton push par défaut est généralement utilisé pour indiquer le choix le plus courant ou par défaut, par exemple la fermeture de la boîte de dialogue. Il s’agit d’un bouton que l’utilisateur peut sélectionner en appuyant simplement sur Entrée lorsqu’aucun autre bouton push de la boîte de dialogue n’a le focus d’entrée.

Lorsque l’utilisateur clique sur un bouton push, il reçoit le focus clavier. Le système envoie à la fenêtre parente du bouton un message WM_COMMAND qui contient le code de notification BN_CLICKED .

Le bouton fractionné est un type spécial de bouton push introduit dans Windows Vista et la version 6.00. Un bouton fractionné est divisé en deux parties. La partie principale fonctionne comme un bouton push standard ou par défaut. La deuxième partie a une flèche pointant vers le bas. En règle générale, un menu s’affiche lorsque la flèche est cliquée.

Un bouton fractionné a le style BS_SPLITBUTTON ou le style BS_DEFSPLITBUTTON s’il s’agit du bouton par défaut dans une boîte de dialogue. Vous pouvez modifier l’apparence du bouton à l’aide du message BCM_SETSPLITINFO ou de la macro Button_SetSplitInfo correspondante.

Lorsque l’utilisateur clique sur la partie principale du bouton fractionné, il envoie une notification BN_CLICKED comme un bouton push normal. Toutefois, lorsque l’utilisateur clique sur la flèche vers le bas, il envoie une notification BCN_DROPDOWN . Il incombe à l’application d’afficher un menu en réponse à BCN_DROPDOWN.

Windows Vista et la version 6.00 ont également introduit un autre type de bouton push, le lien de commande. Visuellement, un lien de commande est très différent d’un bouton Push normal, mais il a la même fonctionnalité. Un lien de commande affiche généralement une icône de flèche, une ligne de texte et du texte supplémentaire dans une police plus petite.

Cases d’option

Une case d’option (également appelée bouton d’option) se compose d’un bouton rond et d’une étiquette, d’une icône ou d’une bitmap définie par l’application qui indique un choix que l’utilisateur peut effectuer en sélectionnant le bouton. Une application utilise généralement des cases d’option dans une zone de groupe pour permettre à l’utilisateur de choisir un ensemble d’options connexes mais mutuellement exclusives.

Une case d’option peut être l’un des deux styles suivants : standard ou automatique, tel que défini par les constantes de style BS_RADIOBUTTON et BS_AUTORADIOBUTTON. Chaque style peut supposer deux états de vérification : activé (un point dans le bouton) ou effacé (aucun point dans le bouton).

Lorsque l’utilisateur sélectionne l’un ou l’autre état, la case d’option reçoit le focus clavier. Le système envoie à la fenêtre parente du bouton un message WM_COMMAND contenant le code de notification BN_CLICKED . La fenêtre parente n’a pas besoin de gérer ce message s’il provient d’une case d’option automatique, car le système définit automatiquement l’état de vérification de ce style. Toutefois, la fenêtre parente doit gérer le message s’il provient d’une case d’option non automatique, car la fenêtre parente est chargée de définir l’état de vérification de ce style. Quel que soit le style de case d’option, le système repeint automatiquement le bouton à mesure que son état change.

Les cases d’option sont organisées en groupes et un seul bouton du groupe peut être activé à tout moment. Si l’indicateur WS_GROUP est défini pour n’importe quelle case d’option, ce bouton est le premier bouton d’un groupe et tous les boutons qui le suivent immédiatement dans l’ordre de tabulation (mais qui n’ont pas l’indicateur WS_GROUP ) font partie de son groupe. Si aucune case d’option n’a l’indicateur WS_GROUP , toutes les cases d’option de la boîte de dialogue sont traitées comme un seul groupe.

L’application peut déterminer si une case d’option est activée à l’aide de la fonction IsDlgButtonChecked .

Informations de référence

Styles de bouton

Conceptuel

Utilisation de boutons