Partager via


La classe CSliderCtrl

Fournit les fonctionnalités du contrôle commun de curseur Windows.

Syntaxe

class CSliderCtrl : public CWnd

Membres

Constructeurs publics

Nom Description
CSliderCtrl::CSliderCtrl Construit un objet CSliderCtrl.

Méthodes publiques

Nom Description
CSliderCtrl::ClearSel Efface la sélection actuelle dans un contrôle de curseur.
CSliderCtrl::ClearTics Supprime les graduations actuelles d’un contrôle de curseur.
CSliderCtrl::Create Crée un contrôle de curseur et l’attache à un CSliderCtrl objet.
CSliderCtrl::CreateEx Crée un contrôle de curseur avec les styles étendus Windows spécifiés et l’attache à un CSliderCtrl objet.
CSliderCtrl::GetBuddy Récupère la poignée dans une fenêtre de contrôle de curseur à un emplacement donné.
CSliderCtrl::GetChannelRect Récupère la taille du canal du contrôle de curseur.
CSliderCtrl::GetLineSize Récupère la taille de ligne d’un contrôle de curseur.
CSliderCtrl::GetNumTics Récupère le nombre de graduations dans un contrôle de curseur.
CSliderCtrl::GetPageSize Récupère la taille de page d’un contrôle de curseur.
CSliderCtrl::GetPos Récupère la position actuelle du curseur.
CSliderCtrl::GetRange Récupère les positions minimales et maximales d’un curseur.
CSliderCtrl::GetRangeMax Récupère la position maximale d’un curseur.
CSliderCtrl::GetRangeMin Récupère la position minimale d’un curseur.
CSliderCtrl::GetSelection Récupère la plage de la sélection actuelle.
CSliderCtrl::GetThumbLength Récupère la longueur du curseur dans le contrôle trackbar actuel.
CSliderCtrl::GetThumbRect Récupère la taille du pouce du contrôle curseur.
CSliderCtrl::GetTic Récupère la position de la graduation spécifiée.
CSliderCtrl::GetTicArray Récupère le tableau de positions de graduation pour un contrôle de curseur.
CSliderCtrl::GetTicPos Récupère la position de la graduation spécifiée, dans les coordonnées du client.
CSliderCtrl::GetToolTips Récupère le handle dans le contrôle d’info-bulle affecté au contrôle curseur, le cas échéant.
CSliderCtrl::SetBuddy Affecte une fenêtre en tant que fenêtre de pote pour un contrôle de curseur.
CSliderCtrl::SetLineSize Définit la taille de ligne d’un contrôle curseur.
CSliderCtrl::SetPageSize Définit la taille de page d’un contrôle de curseur.
CSliderCtrl::SetPos Définit la position actuelle du curseur.
CSliderCtrl::SetRange Définit les positions minimales et maximales d’un curseur.
CSliderCtrl::SetRangeMax Définit la position maximale d’un curseur.
CSliderCtrl::SetRangeMin Définit la position minimale d’un curseur.
CSliderCtrl::SetSelection Définit la plage de la sélection actuelle.
CSliderCtrl::SetThumbLength Définit la longueur du curseur dans le contrôle trackbar actuel.
CSliderCtrl::SetTic Définit la position de la graduation spécifiée.
CSliderCtrl::SetTicFreq Définit la fréquence des graduations par incrément de contrôle de curseur.
CSliderCtrl::SetTipSide Positionne un contrôle d’info-bulle utilisé par un contrôle trackbar.
CSliderCtrl::SetToolTips Affecte un contrôle d’info-bulle à un contrôle curseur.

Notes

Un « contrôle curseur » (également appelé barre de suivi) est une fenêtre contenant un curseur et des graduations facultatives. Lorsque l’utilisateur déplace le curseur, à l’aide de la souris ou des touches de direction, le contrôle envoie des messages de notification pour indiquer la modification.

Les contrôles slider sont utiles lorsque vous souhaitez que l’utilisateur sélectionne une valeur discrète ou un ensemble de valeurs consécutives dans une plage. Par exemple, vous pouvez utiliser un contrôle de curseur pour permettre à l’utilisateur de définir le taux de répétition du clavier en déplaçant le curseur vers une graduation donnée.

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

Le curseur se déplace par incréments que vous spécifiez lors de sa création. Par exemple, si vous spécifiez que le curseur doit avoir une plage de cinq, le curseur ne peut occuper que six positions : une position à gauche du contrôle de curseur et une position pour chaque incrément dans la plage. En règle générale, chacune de ces positions est identifiée par une graduation.

Vous créez un curseur à l’aide du constructeur et de la Create fonction membre de CSliderCtrl. Une fois que vous avez créé un contrôle de curseur, vous pouvez utiliser des fonctions membres pour CSliderCtrl modifier la plupart de ses propriétés. Les modifications que vous pouvez apporter incluent la définition des positions minimales et maximales pour le curseur, le dessin des graduations, la définition d’une plage de sélection et le repositionnement du curseur.

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

Hiérarchie d'héritage

CObject

CCmdTarget

CWnd

CSliderCtrl

Spécifications

En-tête: afxcmn.h

CSliderCtrl::ClearSel

Efface la sélection actuelle dans un contrôle de curseur.

void ClearSel(BOOL bRedraw = FALSE);

Paramètres

bRedraw
Redessiner l’indicateur. Si ce paramètre est TRUE, le curseur est redessiné une fois la sélection effacée ; sinon, le curseur n’est pas redessiné.

CSliderCtrl::ClearTics

Supprime les graduations actuelles d’un contrôle de curseur.

void ClearTics(BOOL bRedraw = FALSE);

Paramètres

bRedraw
Redessiner l’indicateur. Si ce paramètre est TRUE, le curseur est redessiné une fois les graduations effacées ; sinon, le curseur n’est pas redessiné.

CSliderCtrl::Create

Crée un contrôle de curseur et l’attache à un CSliderCtrl objet.

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

Paramètres

dwStyle
Spécifie le style du contrôle curseur. Appliquez n’importe quelle combinaison de styles de contrôle de curseur, décrite dans le Kit de développement logiciel (SDK) Windows, au contrôle.

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

pParentWnd
Spécifie la fenêtre parente du contrôle de curseur, généralement un CDialog. Il ne doit pas être NULL.

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

Valeur de retour

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

Notes

Vous construisez une CSliderCtrl étape en deux étapes. Tout d’abord, appelez le constructeur, puis appelez Create, qui crée le contrôle de curseur et l’attache à l’objet CSliderCtrl .

Selon les valeurs définies pour dwStyle, le contrôle curseur peut avoir une orientation verticale ou horizontale. Il peut avoir des graduations sur l’un ou l’autre côté, les deux côtés ou ni l’un ni l’autre. Il peut également être utilisé pour spécifier une plage de valeurs consécutives.

Pour appliquer des styles de fenêtre étendus au contrôle curseur, appelez CreateEx au lieu de Create.

CSliderCtrl::CreateEx

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

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 dwExStyle paramètre correspondant CreateWindowEx dans le Kit de développement logiciel (SDK) Windows.

dwStyle
Spécifie le style du contrôle curseur. Appliquez n’importe quelle combinaison de styles de contrôle de curseur, décrite dans le Kit de développement logiciel (SDK) Windows, au contrôle.

rect
Référence à une RECT structure 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 d’appliquer Create des styles Windows étendus, spécifiés par le préface WS_EX_de style étendu Windows.

CSliderCtrl::CSliderCtrl

Construit un objet CSliderCtrl.

CSliderCtrl();

CSliderCtrl::GetBuddy

Récupère la poignée dans une fenêtre de contrôle de curseur à un emplacement donné.

CWnd* GetBuddy(BOOL fLocation = TRUE) const;

Paramètres

fLocation
Valeur booléenne qui indique laquelle de deux poignées de fenêtre de pote à récupérer. Peut avoir l’une des valeurs suivantes :

  • TRUE Récupère la poignée à gauche du curseur. Si le contrôle curseur utilise le TBS_VERT style, le message récupère le copain au-dessus du curseur.

  • FALSE Récupère la poignée au copain à droite du curseur. Si le contrôle curseur utilise le TBS_VERT style, le message récupère le copain sous le curseur.

Valeur de retour

Pointeur vers un CWnd objet qui est la fenêtre de pote à l’emplacement spécifié par fLocation, ou NULL si aucune fenêtre de pote n’existe à cet emplacement.

Notes

Cette fonction membre implémente le comportement du message TBM_GETBUDDY Win32, comme décrit dans le SDK Windows. Pour obtenir une description des styles de contrôle de curseur, consultez Les styles de contrôle Trackbar dans le Kit de développement logiciel (SDK) Windows.

CSliderCtrl::GetChannelRect

Récupère la taille et la position du rectangle englobant pour le canal d’un contrôle de curseur.

void GetChannelRect(LPRECT lprc) const;

Paramètres

lprc
Pointeur vers un CRect objet qui contient la taille et la position du rectangle englobant du canal lorsque la fonction retourne.

Notes

Le canal est la zone sur laquelle le curseur se déplace et qui contient la mise en surbrillance lorsqu’une plage est sélectionnée.

CSliderCtrl::GetLineSize

Récupère la taille de la ligne d’un contrôle de curseur.

int GetLineSize() const;

Valeur de retour

Taille d’une ligne pour le contrôle curseur.

Notes

La taille de ligne affecte la quantité de déplacement du curseur pour les notifications et TB_LINEDOWN les TB_LINEUP notifications. Le paramètre par défaut pour la taille de ligne est 1.

CSliderCtrl::GetNumTics

Récupère le nombre de graduations dans un contrôle de curseur.

UINT GetNumTics() const;

Valeur de retour

Nombre de graduations dans le contrôle curseur.

CSliderCtrl::GetPageSize

Récupère la taille de la page pour un contrôle de curseur.

int GetPageSize() const;

Valeur de retour

Taille d’une page pour le contrôle de curseur.

Notes

La taille de la page affecte la quantité de déplacement du curseur pour les notifications et TB_PAGEDOWN les TB_PAGEUP notifications.

CSliderCtrl::GetPos

Récupère la position actuelle du curseur dans un contrôle de curseur.

int GetPos() const;

Valeur de retour

Position actuelle.

CSliderCtrl::GetRange

Récupère les positions maximales et minimales du curseur dans un contrôle de curseur.

void GetRange(
    int& nMin,
    int& nMax) const;

Paramètres

nMin
Référence à un entier qui reçoit la position minimale.

nMax
Référence à un entier qui reçoit la position maximale.

Notes

Cette fonction copie les valeurs dans les entiers référencés par nMin et nMax.

CSliderCtrl::GetRangeMax

Récupère la position maximale du curseur dans un contrôle de curseur.

int GetRangeMax() const;

Valeur de retour

Position maximale du contrôle.

CSliderCtrl::GetRangeMin

Récupère la position minimale du curseur dans un contrôle de curseur.

int GetRangeMin() const;

Valeur de retour

Position minimale du contrôle.

CSliderCtrl::GetSelection

Récupère les positions de début et de fin de la sélection actuelle dans un contrôle de curseur.

void GetSelection(
    int& nMin,
    int& nMax) const;

Paramètres

nMin
Référence à un entier qui reçoit la position de départ de la sélection actuelle.

nMax
Référence à un entier qui reçoit la position de fin de la sélection actuelle.

CSliderCtrl::GetThumbLength

Récupère la longueur du curseur dans le contrôle trackbar actuel.

int GetThumbLength() const;

Valeur de retour

Longueur du curseur, en pixels.

Notes

Cette méthode envoie le TBM_GETTHUMBLENGTH message, qui est décrit dans le Kit de développement logiciel (SDK) Windows.

CSliderCtrl::GetThumbRect

Récupère la taille et la position du rectangle englobant pour le curseur (pouce) dans un contrôle de curseur.

void GetThumbRect(LPRECT lprc) const;

Paramètres

lprc
Pointeur vers un CRect objet qui contient le rectangle englobant du curseur lorsque la fonction retourne.

CSliderCtrl::GetTic

Récupère la position d’une graduation dans un contrôle de curseur.

int GetTic(int nTic) const;

Paramètres

nTic
Index de base zéro identifiant une graduation.

Valeur de retour

Position de la graduation spécifiée ou - 1 si nTic elle ne spécifie pas d’index valide.

CSliderCtrl::GetTicArray

Récupère l’adresse du tableau contenant les positions des graduations pour un contrôle de curseur.

DWORD* GetTicArray() const;

Valeur de retour

Adresse du tableau contenant des positions de graduation pour le contrôle curseur.

CSliderCtrl::GetTicPos

Récupère la position physique actuelle d’une graduation dans un contrôle de curseur.

int GetTicPos(int nTic) const;

Paramètres

nTic
Index de base zéro identifiant une graduation.

Valeur de retour

Position physique, dans les coordonnées du client, de la graduation spécifiée ou - 1 si nTic elle ne spécifie pas d’index valide.

CSliderCtrl::GetToolTips

Récupère le handle dans le contrôle d’info-bulle affecté au contrôle curseur, le cas échéant.

CToolTipCtrl* GetToolTips() const;

Valeur de retour

Pointeur vers un CToolTipCtrl objet ou NULL si les info-bulles ne sont pas utilisées. Si le contrôle de curseur n’utilise pas le TBS_TOOLTIPS style, la valeur de retour est NULL.

Notes

Cette fonction membre implémente le comportement du message TBM_GETTOOLTIPS Win32, comme décrit dans le SDK Windows. Notez que cette fonction membre retourne un CToolTipCtrl objet au lieu d’un handle à un contrôle.

Pour obtenir une description des styles de contrôle de curseur, consultez Les styles de contrôle Trackbar dans le Kit de développement logiciel (SDK) Windows.

CSliderCtrl::SetBuddy

Affecte une fenêtre en tant que fenêtre de pote pour un contrôle de curseur.

CWnd* SetBuddy(
    CWnd* pWndBuddy,
    BOOL fLocation = TRUE);

Paramètres

pWndBuddy
Pointeur vers un CWnd objet qui sera défini en tant que copain du contrôle de curseur.

fLocation
Valeur spécifiant l’emplacement auquel afficher la fenêtre de pote. Cette valeur peut être l’une des suivantes :

  • TRUE Le copain apparaît à gauche de la barre de piste si le contrôle trackbar utilise le TBS_HORZ style. Si la barre de suivi utilise le TBS_VERT style, le copain apparaît au-dessus du contrôle trackbar.

  • FALSE Le copain apparaîtra à droite de la barre de piste si le contrôle trackbar utilise le TBS_HORZ style. Si la barre de suivi utilise le TBS_VERT style, le copain apparaît sous le contrôle trackbar.

Valeur de retour

Pointeur vers un CWnd objet précédemment affecté au contrôle de curseur à cet emplacement.

Notes

Cette fonction membre implémente le comportement du message TBM_SETBUDDY Win32, comme décrit dans le SDK Windows. Notez que cette fonction membre utilise des pointeurs vers CWnd des objets, plutôt que des handles de fenêtre pour sa valeur de retour et son paramètre.

Pour obtenir une description des styles de contrôle de curseur, consultez Les styles de contrôle Trackbar dans le Kit de développement logiciel (SDK) Windows.

CSliderCtrl::SetLineSize

Définit la taille de la ligne d’un contrôle curseur.

int SetLineSize(int nSize);

Paramètres

nSize
Nouvelle taille de ligne du contrôle curseur.

Valeur de retour

Taille de ligne précédente.

Notes

La taille de ligne affecte la quantité de déplacement du curseur pour les notifications et TB_LINEDOWN les TB_LINEUP notifications.

CSliderCtrl::SetPageSize

Définit la taille de la page pour un contrôle de curseur.

int SetPageSize(int nSize);

Paramètres

nSize
Nouvelle taille de page du contrôle de curseur.

Valeur de retour

Taille de page précédente.

Notes

La taille de la page affecte la quantité de déplacement du curseur pour les notifications et TB_PAGEDOWN les TB_PAGEUP notifications.

CSliderCtrl::SetPos

Définit la position actuelle du curseur dans un contrôle de curseur.

void SetPos(int nPos);

Paramètres

nPos
Spécifie la nouvelle position du curseur.

CSliderCtrl::SetRange

Définit la plage (positions minimales et maximales) du curseur dans un contrôle de curseur.

void SetRange(
    int nMin,
    int nMax,
    BOOL bRedraw = FALSE);

Paramètres

nMin
Position minimale du curseur.

nMax
Position maximale du curseur.

bRedraw
Indicateur de redessination. Si ce paramètre est TRUEdéfini, le curseur est redessiné une fois la plage définie ; sinon, le curseur n’est pas redessiné.

CSliderCtrl::SetRangeMax

Définit la plage maximale du curseur dans un contrôle de curseur.

void SetRangeMax(
    int nMax,
    BOOL bRedraw = FALSE);

Paramètres

nMax
Position maximale du curseur.

bRedraw
Indicateur de redessination. Si ce paramètre est TRUEdéfini, le curseur est redessiné une fois la plage définie ; sinon, le curseur n’est pas redessiné.

CSliderCtrl::SetRangeMin

Définit la plage minimale du curseur dans un contrôle de curseur.

void SetRangeMin(
    int nMin,
    BOOL bRedraw = FALSE);

Paramètres

nMin
Position minimale du curseur.

bRedraw
Indicateur de redessination. Si ce paramètre est TRUEdéfini, le curseur est redessiné une fois la plage définie ; sinon, le curseur n’est pas redessiné.

CSliderCtrl::SetSelection

Définit les positions de début et de fin de la sélection actuelle dans un contrôle de curseur.

void SetSelection(
    int nMin,
    int nMax);

Paramètres

nMin
Position de départ du curseur.

nMax
Position de fin du curseur.

CSliderCtrl::SetThumbLength

Définit la longueur du curseur dans le contrôle trackbar actuel.

void SetThumbLength(int nLength);

Paramètres

nLength
[in] Longueur du curseur, en pixels.

Notes

Cette méthode nécessite que le contrôle trackbar soit défini sur TBS_FIXEDLENGTH style.

Cette méthode envoie le TBM_SETTHUMBLENGTH message, qui est décrit dans le Kit de développement logiciel (SDK) Windows.

Exemple

Le premier exemple de code définit la variable, m_sliderCtrlutilisée pour accéder au contrôle trackbar actuel. L’exemple définit également une variable, thumbLengthutilisée pour stocker la longueur par défaut du composant pouce du contrôle trackbar. Ces variables sont utilisées dans l’exemple suivant.

// Variable to access the slider control.
CSliderCtrl m_sliderCtrl;
// Length of the slider control's thumb.
int thumbLength;

L’exemple de code suivant définit le composant pouce du contrôle trackbar sur deux fois sa longueur par défaut.

// Add extra initialization.

// Modify the size of the slider control's thumb.
// First, set the TBS_FIXEDLENGTH style.
m_sliderCtrl.ModifyStyle(0, TBS_FIXEDLENGTH);
thumbLength = m_sliderCtrl.GetThumbLength();
m_sliderCtrl.SetThumbLength(thumbLength * 2);

// End extra initialization.

CSliderCtrl::SetTic

Définit la position d’une graduation dans un contrôle de curseur.

BOOL SetTic(int nTic);

Paramètres

nTic
Position de la graduation. Ce paramètre doit spécifier une valeur positive.

Valeur de retour

Différent de zéro si la graduation est définie ; sinon 0.

CSliderCtrl::SetTicFreq

Définit la fréquence avec laquelle les graduations sont affichées dans un curseur.

void SetTicFreq(int nFreq);

Paramètres

nFreq
Fréquence des graduations.

Notes

Par exemple, si la fréquence est définie sur 2, une graduation s’affiche pour chaque incrément dans la plage du curseur. Le paramètre par défaut de la fréquence est 1 (autrement dit, chaque incrément de la plage est associé à une graduation).

Vous devez créer le contrôle avec le TBS_AUTOTICKS style pour utiliser cette fonction. Pour plus d’informations, consultez CSliderCtrl::Create.

CSliderCtrl::SetTipSide

Positionne un contrôle d’info-bulle utilisé par un contrôle trackbar.

int SetTipSide(int nLocation);

Paramètres

nLocation
Valeur représentant l’emplacement auquel afficher le contrôle d’info-bulle. Pour obtenir la liste des valeurs possibles, consultez le message TBM_SETTIPSIDEWin32, comme décrit dans le Kit de développement logiciel (SDK) Windows.

Valeur de retour

Valeur qui représente l’emplacement précédent du contrôle d’info-bulle. La valeur de retour est égale à l’une des valeurs possibles pour nLocation.

Notes

Cette fonction membre implémente le comportement du message TBM_SETTIPSIDE Win32, comme décrit dans le SDK Windows. Contrôles slider qui utilisent les info-bulles d’affichage de TBS_TOOLTIPS style. Pour obtenir une description des styles de contrôle de curseur, consultez Les styles de contrôle Trackbar dans le Kit de développement logiciel (SDK) Windows.

CSliderCtrl::SetToolTips

Affecte un contrôle d’info-bulle à un contrôle curseur.

void SetToolTips(CToolTipCtrl* pWndTip);

Paramètres

pWndTip
Pointeur vers un CToolTipCtrl objet contenant les info-bulles à utiliser avec le contrôle curseur.

Notes

Cette fonction membre implémente le comportement du message TBM_SETTOOLTIPS Win32, comme décrit dans le SDK Windows. Lorsqu’un contrôle de curseur est créé avec le TBS_TOOLTIPS style, il crée un contrôle d’info-bulle par défaut qui apparaît en regard du curseur, affichant la position actuelle du curseur. Pour obtenir une description des styles de contrôle de curseur, consultez Les styles de contrôle Trackbar dans le Kit de développement logiciel (SDK) Windows.

Voir aussi

Exemple MFC CMNCTRL2
CWnd Classe
Graphique hiérarchique
CProgressCtrl Classe