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
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 leTBS_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 leTBS_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 leTBS_HORZ
style. Si la barre de suivi utilise leTBS_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 leTBS_HORZ
style. Si la barre de suivi utilise leTBS_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 TRUE
dé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 TRUE
dé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 TRUE
dé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_sliderCtrl
utilisée pour accéder au contrôle trackbar actuel. L’exemple définit également une variable, thumbLength
utilisé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_SETTIPSIDE
Win32, 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