Button (Contrôles Windows)

Cette section contient des informations sur les éléments de programmation utilisés avec les contrôles de bouton. Un bouton est un contrôle sur lequel l’utilisateur peut cliquer pour fournir une entrée à une application.

Vues d'ensemble

Rubrique Contenu
Messages de bouton Cette rubrique traite des messages qui sont utilisés avec des boutons.
États du bouton Cette section explique comment la sélection d’un bouton modifie son état et comment l’application doit répondre.
Types de boutons Cette rubrique décrit les différents types de boutons.
Utilisation de boutons Cette section explique comment effectuer certaines tâches associées aux boutons.

Fonctions

Rubrique Contenu
CheckDlgButton Modifie l’état case activée d’un contrôle de bouton.
CheckRadioButton Ajoute une marque case activée à (vérifie) une case d’option spécifiée dans un groupe et supprime une marque case activée de (efface) toutes les autres cases d’option du groupe.
IsDlgButtonChecked La fonction IsDlgButtonChecked détermine si un contrôle de bouton est vérifié ou si un contrôle de bouton à trois états est coché, décoché ou indéterminé.

Macros

Rubrique Contenu
Button_Enable Active ou désactive un bouton.
Button_GetCheck Obtient l’état case activée d’une case d’option ou d’une zone de case activée. Vous pouvez utiliser cette macro ou envoyer le message BM_GETCHECK explicitement.
Button_GetIdealSize Obtient la taille du bouton qui correspond le mieux au texte et à l’image, si une liste d’images est présente. Vous pouvez utiliser cette macro ou envoyer le message BCM_GETIDEALSIZE explicitement.
Button_GetImageList Obtient la structure BUTTON_IMAGELIST qui décrit la liste d’images définie pour un contrôle bouton. Vous pouvez utiliser cette macro ou envoyer le message BCM_GETIMAGELIST explicitement.
Button_GetNote Obtient le texte de la note associée à un bouton de lien de commande. Vous pouvez utiliser cette macro ou envoyer le message BCM_GETNOTE explicitement.
Button_GetNoteLength Obtient la longueur du texte de note qui peut être affiché dans la description d’un lien de commande. Utilisez cette macro ou envoyez explicitement le message BCM_GETNOTELENGTH .
Button_GetSplitInfo Obtient des informations pour un contrôle de bouton fractionné spécifié. Utilisez cette macro ou envoyez le message BCM_GETSPLITINFO explicitement.
Button_GetState Obtient l’état case activée d’une case d’option ou d’une zone de case activée. Vous pouvez utiliser cette macro ou envoyer le message BM_GETSTATE explicitement.
Button_GetText Obtient le texte d’un bouton.
Button_GetTextLength Obtient le nombre de caractères dans le texte d’un bouton.
Button_GetTextMargin Obtient les marges utilisées pour dessiner du texte dans un contrôle de bouton. Vous pouvez utiliser cette macro ou envoyer le message BCM_GETTEXTMARGIN explicitement.
Button_SetCheck Définit l’état case activée d’une case d’option ou d’une zone de case activée. Vous pouvez utiliser cette macro ou envoyer le message BM_SETCHECK explicitement.
Button_SetDropDownState Définit l’état de liste déroulante d’un bouton spécifié avec le style de BS_SPLITBUTTON. Utilisez cette macro ou envoyez le message BCM_SETDROPDOWNSTATE explicitement.
Button_SetElevationRequiredState Définit l’état d’élévation requis pour un bouton ou un lien de commande spécifié pour afficher une icône avec élévation de privilèges. Utilisez cette macro ou envoyez le message BCM_SETSHIELD explicitement.
Button_SetImageList Affecte une liste d’images à un contrôle bouton. Vous pouvez utiliser cette macro ou envoyer le message BCM_SETIMAGELIST explicitement.
Button_SetNote Définit le texte de la note associée à un bouton de lien de commande spécifié. Vous pouvez utiliser cette macro ou envoyer le message BCM_SETNOTE explicitement.
Button_SetSplitInfo Définit les informations d’un contrôle de bouton fractionné spécifié. Utilisez cette macro ou envoyez le message BCM_SETSPLITINFO explicitement.
Button_SetState Définit l’état de surbrillance d’un bouton. L’état de surbrillance indique si le bouton est mis en surbrillance comme si l’utilisateur l’avait poussé. Vous pouvez utiliser cette macro ou envoyer le message BM_SETSTATE explicitement.
Button_SetStyle Définit le style d’un bouton. Vous pouvez utiliser cette macro ou envoyer le message BM_SETSTYLE explicitement.
Button_SetText Définit le texte d’un bouton.
Button_SetTextMargin Définit les marges pour dessiner du texte dans un contrôle bouton. Vous pouvez utiliser cette macro ou envoyer le message BCM_SETTEXTMARGIN explicitement.

Messages

Rubrique Contenu
BCM_GETIDEALSIZE Obtient la taille du bouton qui correspond le mieux à son texte et à son image, si une liste d’images est présente. Vous pouvez envoyer ce message explicitement ou utiliser la macro Button_GetIdealSize .
BCM_GETIMAGELIST Obtient la structure BUTTON_IMAGELIST qui décrit la liste d’images affectée à un contrôle bouton. Vous pouvez envoyer ce message explicitement ou utiliser la macro Button_GetImageList .
BCM_GETNOTE Obtient le texte de la note associée à un bouton de lien de commande. Vous pouvez envoyer ce message explicitement ou utiliser la macro Button_GetNote .
BCM_GETNOTELENGTH Obtient la longueur du texte de note qui peut être affiché dans la description d’un bouton de lien de commande. Envoyez ce message explicitement ou à l’aide de la macro Button_GetNoteLength .
BCM_GETSPLITINFO Obtient des informations pour un contrôle de bouton fractionné. Envoyez ce message explicitement ou à l’aide de la macro Button_GetSplitInfo .
BCM_GETTEXTMARGIN Obtient les marges utilisées pour dessiner du texte dans un contrôle de bouton. Vous pouvez envoyer ce message explicitement ou utiliser la macro Button_GetTextMargin .
BCM_SETDROPDOWNSTATE Définit l’état de liste déroulante d’un bouton avec un style TBSTYLE_DROPDOWN. Envoyez ce message explicitement ou à l’aide de la macro Button_SetDropDownState .
BCM_SETIMAGELIST Affecte une liste d’images à un contrôle bouton. Vous pouvez envoyer ce message explicitement ou utiliser la macro Button_SetImageList .
BCM_SETNOTE Définit le texte de la note associée à un bouton de lien de commande. Vous pouvez envoyer ce message explicitement ou utiliser la macro Button_SetNote .
BCM_SETSHIELD Définit l’état d’élévation requis pour un bouton ou un lien de commande spécifié pour afficher une icône avec élévation de privilèges. Envoyez ce message explicitement ou à l’aide de la macro Button_SetElevationRequiredState .
BCM_SETSPLITINFO Définit les informations d’un contrôle de bouton fractionné. Envoyez ce message explicitement ou à l’aide de la macro Button_SetSplitInfo .
BCM_SETTEXTMARGIN Le message BCM_SETTEXTMARGIN définit les marges pour dessiner du texte dans un contrôle bouton.
BM_CLICK Simule l’utilisateur qui clique sur un bouton. Ce message fait que le bouton reçoit les messages WM_LBUTTONDOWN et WM_LBUTTONUP , et que la fenêtre parente du bouton reçoit un code de notification BN_CLICKED .
BM_GETCHECK Obtient l’état case activée d’une case d’option ou d’une zone de case activée. Vous pouvez envoyer ce message explicitement ou utiliser la macro Button_GetCheck .
BM_GETIMAGE Récupère un handle de l’image (icône ou bitmap) associé au bouton.
BM_GETSTATE Récupère l’état d’un bouton ou d’une zone de case activée. Vous pouvez envoyer ce message explicitement ou utiliser la macro Button_GetState .
BM_SETCHECK Définit l’état case activée d’une case d’option ou d’une zone de case activée. Vous pouvez envoyer ce message explicitement ou à l’aide de la macro Button_SetCheck .
BM_SETDONTCLICK Définit un indicateur sur une case d’option qui contrôle la génération de messages BN_CLICKED lorsque le bouton reçoit le focus.
BM_SETIMAGE Associe une nouvelle image (icône ou bitmap) au bouton.
BM_SETSTATE Définit l’état de surbrillance d’un bouton. L’état de surbrillance indique si le bouton est mis en surbrillance comme si l’utilisateur l’avait poussé. Vous pouvez envoyer ce message explicitement ou utiliser la macro Button_SetState .
BM_SETSTYLE Définit le style d’un bouton. Vous pouvez envoyer ce message explicitement ou utiliser la macro Button_SetStyle .

Notifications

Rubrique Contenu
BCN_DROPDOWN Envoyé lorsque l’utilisateur clique sur une flèche déroulante sur un bouton. La fenêtre parente du contrôle reçoit ce code de notification sous la forme d’un message WM_NOTIFY .
BCN_HOTITEMCHANGE Avertit le propriétaire du contrôle de bouton que la souris entre ou quitte la zone cliente du contrôle bouton. Le contrôle bouton envoie ce code de notification sous la forme d’un message WM_NOTIFY .
BN_CLICKED Envoyé lorsque l’utilisateur clique sur un bouton.
La fenêtre parente du bouton reçoit le code de notification BN_CLICKED via le message WM_COMMAND .
BN_DBLCLK Envoyé lorsque l’utilisateur double-clique sur un bouton. Ce code de notification est envoyé automatiquement pour les boutons BS_USERBUTTON, BS_RADIOBUTTON et BS_OWNERDRAW . Les autres types de boutons envoient BN_DBLCLK uniquement s’ils ont le style BS_NOTIFY .
La fenêtre parente du bouton reçoit le code de notification BN_DBLCLK via le message WM_COMMAND .
BN_DISABLE Envoyé lorsqu’un bouton est désactivé. Note: Ce code de notification est fourni uniquement pour la compatibilité avec les versions 16 bits de Windows antérieures à la version 3.0. Les applications doivent utiliser le style de bouton BS_OWNERDRAW et la structure DRAWITEMSTRUCT pour cette tâche.
La fenêtre parente du bouton reçoit le code de notification BN_DISABLE via le message WM_COMMAND .
BN_DOUBLECLICKED Envoyé lorsque l’utilisateur double-clique sur un bouton. Ce code de notification est envoyé automatiquement pour les boutons BS_USERBUTTON, BS_RADIOBUTTON et BS_OWNERDRAW . Les autres types de boutons envoient BN_DOUBLECLICKED uniquement s’ils ont le style BS_NOTIFY .
La fenêtre parente du bouton reçoit le code de notification BN_DOUBLECLICKED via le message WM_COMMAND .
BN_HILITE Envoyé lorsque l’utilisateur sélectionne un bouton. Note: Ce code de notification est fourni uniquement pour la compatibilité avec les versions 16 bits de Windows antérieures à la version 3.0. Les applications doivent utiliser le style de bouton BS_OWNERDRAW et la structure DRAWITEMSTRUCT pour cette tâche.
La fenêtre parente du bouton reçoit le code de notification BN_HILITE via le message WM_COMMAND .
BN_KILLFOCUS Envoyé lorsqu’un bouton perd le focus du clavier. Le bouton doit avoir le style BS_NOTIFY pour envoyer ce code de notification.
La fenêtre parente du bouton reçoit le code de notification BN_KILLFOCUS via le message WM_COMMAND .
BN_PAINT Envoyé lorsqu’un bouton doit être peint. Note: Ce code de notification est fourni uniquement pour la compatibilité avec les versions 16 bits de Windows antérieures à la version 3.0. Les applications doivent utiliser le style de bouton BS_OWNERDRAW et la structure DRAWITEMSTRUCT pour cette tâche.
La fenêtre parente du bouton reçoit le code de notification BN_PAINT via le message WM_COMMAND .
BN_PUSHED Envoyé lorsque l’état push d’un bouton est défini sur pushed. Note: Ce code de notification est fourni uniquement pour la compatibilité avec les versions 16 bits de Windows antérieures à la version 3.0. Les applications doivent utiliser le style de bouton BS_OWNERDRAW et la structure DRAWITEMSTRUCT pour cette tâche.
La fenêtre parente du bouton reçoit le code de notification BN_PUSHED via le message WM_COMMAND .
BN_SETFOCUS Envoyé lorsqu’un bouton reçoit le focus du clavier. Le bouton doit avoir le style BS_NOTIFY pour envoyer ce code de notification.
La fenêtre parente du bouton reçoit le code de notification BN_SETFOCUS via le message WM_COMMAND .
BN_UNHILITE Envoyé lorsque la mise en surbrillance doit être supprimée d’un bouton. Note: Ce code de notification est fourni uniquement pour la compatibilité avec les versions 16 bits de Windows antérieures à la version 3.0. Les applications doivent utiliser le style de bouton BS_OWNERDRAW et la structure DRAWITEMSTRUCT pour cette tâche.
La fenêtre parente du bouton reçoit le code de notification BN_UNHILITE via le message WM_COMMAND .
BN_UNPUSHED Envoyé lorsque l’état push d’un bouton est défini sur désactivé. Note: Ce code de notification est fourni uniquement pour la compatibilité avec les versions 16 bits de Windows antérieures à la version 3.0. Les applications doivent utiliser le style de bouton BS_OWNERDRAW et la structure DRAWITEMSTRUCT pour cette tâche.
La fenêtre parente du bouton reçoit le code de notification BN_UNPUSHED via le message WM_COMMAND .
NM_CUSTOMDRAW (bouton) Avertit la fenêtre parente d’un contrôle de bouton des opérations de dessin personnalisées sur le bouton.
Le contrôle bouton envoie ce code de notification sous la forme d’un message WM_NOTIFY .
WM_CTLCOLORBTN Le message WM_CTLCOLORBTN est envoyé à la fenêtre parente d’un bouton avant de dessiner le bouton. La fenêtre parente peut modifier le texte et les couleurs d’arrière-plan du bouton. Toutefois, seuls les boutons dessinés par le propriétaire répondent à la fenêtre parente qui traite ce message.

Structures

Rubrique Contenu
BUTTON_IMAGELIST Contient des informations sur une liste d’images qui est utilisée avec un contrôle bouton.
BUTTON_SPLITINFO Contient des informations qui définissent un bouton fractionné (styles BS_SPLITBUTTON et BS_DEFSPLITBUTTON ). Utilisé avec les messages BCM_GETSPLITINFO et BCM_SETSPLITINFO .
NMBCDROPDOWN Contient des informations sur une notification BCN_DROPDOWN .
NMBCHOTITEM Contient des informations sur le déplacement de la souris sur un contrôle de bouton.

Constantes

Rubrique Contenu
Styles de bouton Spécifie une combinaison de styles de boutons. Si vous créez un bouton à l’aide de la classe BUTTON avec la fonction CreateWindow ou CreateWindowEx , vous pouvez spécifier l’un des styles de bouton répertoriés ci-dessous.