Share via


CSpinButtonCtrl, classe

Fournit les fonctionnalités du contrôle commun de bouton toupie (spin) Windows.

Syntaxe

class CSpinButtonCtrl : public CWnd

Membres

Constructeurs publics

Nom Description
CSpinButtonCtrl ::CSpinButtonCtrl Construit un objet CSpinButtonCtrl.

Méthodes publiques

Nom Description
CSpinButtonCtrl ::Create Crée un contrôle de bouton spin et l’attache à un CSpinButtonCtrl objet.
CSpinButtonCtrl ::CreateEx Crée un contrôle de bouton spin avec les styles étendus Windows spécifiés et l’attache à un CSpinButtonCtrl objet.
CSpinButtonCtrl ::GetAccel Récupère les informations d’accélération d’un contrôle de bouton de rotation.
CSpinButtonCtrl ::GetBase Récupère la base actuelle d’un contrôle de bouton spin.
CSpinButtonCtrl ::GetBuddy Récupère un pointeur vers la fenêtre de pote actuelle.
CSpinButtonCtrl ::GetPos Récupère la position actuelle d’un contrôle de bouton de rotation.
CSpinButtonCtrl ::GetRange Récupère les limites supérieures et inférieures (plage) d’un contrôle de bouton de rotation.
CSpinButtonCtrl ::SetAccel Définit l’accélération d’un contrôle de bouton de rotation.
CSpinButtonCtrl ::SetBase Définit la base d’un contrôle de bouton de rotation.
CSpinButtonCtrl ::SetBuddy Définit la fenêtre de copain pour un contrôle de bouton de rotation.
CSpinButtonCtrl ::SetPos Définit la position actuelle du contrôle.
CSpinButtonCtrl ::SetRange Définit les limites supérieures et inférieures (plage) d’un contrôle de bouton de rotation.

Notes

Un « contrôle de bouton spin » (également appelé contrôle haut vers le bas) est une paire de boutons de flèche que l’utilisateur peut cliquer pour incrémenter ou décrémenter une valeur, telle qu’une position de défilement ou un nombre affiché dans un contrôle complémentaire. La valeur associée à un contrôle de bouton spin est appelée sa position actuelle. Un contrôle de bouton de rotation est le plus souvent utilisé avec un contrôle complémentaire, appelé « fenêtre de pote ».

Ce contrôle (et par conséquent la CSpinButtonCtrl classe) est disponible uniquement pour les programmes exécutés sous Windows 95/98 et Windows NT version 3.51 et ultérieure.

Pour l’utilisateur, un contrôle de bouton de rotation et sa fenêtre de pote ressemblent souvent à un seul contrôle. Vous pouvez spécifier qu’un contrôle de bouton de rotation se positionne automatiquement en regard de sa fenêtre de pote et qu’il définit automatiquement la légende de la fenêtre de copain à sa position actuelle. Vous pouvez utiliser un contrôle de bouton de rotation avec un contrôle d’édition pour inviter l’utilisateur à entrer des données numériques.

Cliquer sur la flèche vers le haut déplace la position actuelle vers le maximum, puis cliquer sur la flèche vers le bas déplace la position actuelle vers le minimum. Par défaut, la valeur minimale est 100 et la valeur maximale est 0. Chaque fois que le paramètre minimal est supérieur au paramètre maximal (par exemple, lorsque les paramètres par défaut sont utilisés), le fait de cliquer sur la flèche vers le haut diminue la valeur de position et le fait de cliquer sur la flèche vers le bas l’augmente.

Un contrôle de bouton de rotation sans fenêtre de pote fonctionne comme une sorte de barre de défilement simplifiée. Par exemple, un contrôle tabulation affiche parfois un contrôle de bouton de rotation pour permettre à l’utilisateur de faire défiler des onglets supplémentaires en mode affichage.

Pour plus d’informations sur l’utilisation CSpinButtonCtrl, consultez Contrôles et utilisation de CSpinButtonCtrl.

Hiérarchie d'héritage

CObject

CCmdTarget

CWnd

CSpinButtonCtrl

Spécifications

En-tête : afxcmn.h

CSpinButtonCtrl ::Create

Crée un contrôle de bouton spin et l’attache à un CSpinButtonCtrl objet..

virtual BOOL Create(
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

Paramètres

dwStyle
Spécifie le style du contrôle de bouton spin. Appliquez n’importe quelle combinaison de styles de contrôle de bouton spin au contrôle. Ces styles sont décrits dans les styles de contrôle haut vers le bas dans le Kit de développement logiciel (SDK) Windows.

Rect
Spécifie la taille et la position du contrôle spin button. Il peut s’agir d’un objet CRect ou d’une structure RECT

pParentWnd
Pointeur vers la fenêtre parente du contrôle spin button, généralement un CDialog. Elle ne doit pas être NULL.

nID
Spécifie l’ID du contrôle spin button.

Valeur de retour

Différent de zéro si l’initialisation a réussi ; sinon 0.

Notes

Vous construisez un CSpinButtonCtrl objet en deux étapes, appelez le constructeur, puis appelez Create, ce qui crée le contrôle de bouton spin et l’attache à l’objet CSpinButtonCtrl .

Pour créer un contrôle de bouton spin avec des styles de fenêtre étendus, appelez CSpinButtonCtrl ::CreateEx au lieu de Create.

CSpinButtonCtrl ::CreateEx

Crée un contrôle (fenêtre enfant) et l’associe à l’objet CSpinButtonCtrl .

virtual BOOL CreateEx(
    DWORD dwExStyle,
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

Paramètres

dwExStyle
Spécifie le style étendu du contrôle en cours de création. Pour obtenir la liste des styles windows étendus, consultez le paramètre dwExStyle pour CreateWindowEx dans le Kit de développement logiciel (SDK) Windows.

dwStyle
Spécifie le style du contrôle de bouton spin. Appliquez n’importe quelle combinaison de styles de contrôle de bouton spin au contrôle. Ces styles sont décrits dans les styles de contrôle haut vers le bas dans le Kit de développement logiciel (SDK) Windows.

Rect
Référence à une structure RECT décrivant la taille et la position de la fenêtre à créer, dans les coordonnées clientes de pParentWnd.

pParentWnd
Pointeur vers la fenêtre qui est le parent du contrôle.

nID
ID de la fenêtre enfant du contrôle.

Valeur de retour

Valeur différente de zéro cas de réussite ; sinon, 0.

Notes

Utilisez CreateEx plutôt que Créer pour appliquer des styles Windows étendus, spécifiés par le préface de style étendu Windows WS_EX_.

CSpinButtonCtrl ::CSpinButtonCtrl

Construit un objet CSpinButtonCtrl.

CSpinButtonCtrl();

CSpinButtonCtrl ::GetAccel

Récupère les informations d’accélération d’un contrôle de bouton de rotation.

UINT GetAccel(
    int nAccel,
    UDACCEL* pAccel) const;

Paramètres

nAccel
Nombre d’éléments dans le tableau spécifié par pAccel.

pAccel
Pointeur vers un tableau de structures UDACCEL qui reçoivent des informations d’accélération.

Valeur de retour

Nombre de structures d’accélérateur récupérées.

CSpinButtonCtrl ::GetBase

Récupère la base actuelle d’un contrôle de bouton spin.

UINT GetBase() const;

Valeur de retour

Valeur de base actuelle.

CSpinButtonCtrl ::GetBuddy

Récupère un pointeur vers la fenêtre de pote actuelle.

CWnd* GetBuddy() const;

Valeur de retour

Pointeur vers la fenêtre de copain actuelle.

CSpinButtonCtrl ::GetPos

Récupère la position actuelle d’un contrôle de bouton de rotation.

int GetPos() const;  int GetPos32(LPBOOL lpbError = NULL) const;

Paramètres

lpbError
Pointeur vers une valeur booléenne définie sur zéro si la valeur est récupérée ou non zéro si une erreur se produit. Si ce paramètre est défini sur NULL, les erreurs ne sont pas signalées.

Valeur de retour

La première version retourne la position actuelle 16 bits dans le mot de bas ordre. Le mot à ordre élevé n’est pas différent de zéro si une erreur s’est produite.

La deuxième version retourne la position 32 bits.

Notes

Lorsqu’il traite la valeur retournée, le contrôle met à jour sa position actuelle en fonction de la légende de la fenêtre de pote. Le contrôle retourne une erreur s’il n’existe aucune fenêtre de pote ou si le légende spécifie une valeur non valide ou hors plage.

CSpinButtonCtrl ::GetRange

Récupère les limites supérieures et inférieures (plage) d’un contrôle de bouton de rotation.

DWORD GetRange() const;

void GetRange(
    int& lower,
    int& upper) const;

void GetRange32(
    int& lower,
    int &upper) const;

Paramètres

lower
Référence à un entier qui reçoit la limite inférieure pour le contrôle.

upper
Référence à un entier qui reçoit la limite supérieure du contrôle.

Valeur de retour

La première version retourne une valeur 32 bits contenant les limites supérieures et inférieures. Le mot de bas ordre est la limite supérieure pour le contrôle, et le mot de classement élevé est la limite inférieure.

Notes

La fonction GetRange32 membre récupère la plage du contrôle spin button sous la forme d’un entier 32 bits.

CSpinButtonCtrl ::SetAccel

Définit l’accélération d’un contrôle de bouton de rotation.

BOOL SetAccel(
    int nAccel,
    UDACCEL* pAccel);

Paramètres

nAccel
Nombre de structures UDACCEL spécifiées par pAccel.

pAccel
Pointeur vers un tableau de structures UDACCEL, qui contiennent des informations d’accélération. Les éléments doivent être triés dans l’ordre croissant en fonction du nSec membre.

Valeur de retour

Valeur différente de zéro cas de réussite ; sinon, 0.

CSpinButtonCtrl ::SetBase

Définit la base d’un contrôle de bouton de rotation.

int SetBase(int nBase);

Paramètres

nBase
Nouvelle valeur de base pour le contrôle. Il peut s’agir de 10 pour decimal ou 16 pour hexadécimal.

Valeur de retour

Valeur de base précédente si elle réussit ou zéro si une base non valide est donnée.

Notes

La valeur de base détermine si la fenêtre de pote affiche des nombres en chiffres décimaux ou hexadécimaux. Les nombres hexadécimaux sont toujours non signés ; Les nombres décimaux sont signés.

CSpinButtonCtrl ::SetBuddy

Définit la fenêtre de copain pour un contrôle de bouton de rotation.

CWnd* SetBuddy(CWnd* pWndBuddy);

Paramètres

pWndBuddy
Pointeur vers la nouvelle fenêtre de copain.

Valeur de retour

Pointeur vers la fenêtre de copain précédente.

Notes

Un contrôle spin est presque toujours associé à une autre fenêtre, telle qu’un contrôle d’édition, qui affiche du contenu. Cette autre fenêtre est appelée « pote » du contrôle spin.

CSpinButtonCtrl ::SetPos

Définit la position actuelle d’un contrôle de bouton de rotation.

int SetPos(int nPos);
int SetPos32(int nPos);

Paramètres

Osbl
Nouvelle position pour le contrôle. Cette valeur doit être dans la plage spécifiée par les limites supérieures et inférieures pour le contrôle.

Valeur de retour

Position précédente (précision 16 bits pour SetPos, précision 32 bits pour SetPos32).

Notes

SetPos32 définit la position 32 bits.

CSpinButtonCtrl ::SetRange

Définit les limites supérieures et inférieures (plage) d’un contrôle de bouton de rotation.

void SetRange(
    short nLower,
    short nUpper);

void SetRange32(
    int nLower,
    int nUpper);

Paramètres

nLower et nUpper
Limites supérieures et inférieures pour le contrôle. Pour SetRange, aucune limite ne peut être supérieure à UD_MAXVAL ou inférieure à UD_MINVAL ; en outre, la différence entre les deux limites ne peut pas dépasser UD_MAXVAL. SetRange32 ne place aucune restriction sur les limites ; utilisez tous les entiers.

Notes

La fonction SetRange32 membre définit la plage 32 bits pour le contrôle de bouton de rotation.

Remarque

La plage par défaut du bouton de rotation a la valeur maximale définie sur zéro (0) et la valeur minimale définie sur 100. Étant donné que la valeur maximale est inférieure à la valeur minimale, le fait de cliquer sur la flèche vers le haut diminue la position et de cliquer sur la flèche vers le bas l’augmente. Permet CSpinButtonCtrl::SetRange d’ajuster ces valeurs.

Voir aussi

Exemple de CMNCTRL2 MFC
CWnd, classe
Graphique hiérarchique
CSliderCtrl, classe