QSlider Class
Le widget QSlider permet d'afficher un curseur vertical ou horizontal. En savoir plus...
| En-tête : | #include <QSlider> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake : | QT += widgets |
| Hérite de : | QAbstractSlider |
Types publics
| enum | TickPosition { NoTicks, TicksBothSides, TicksAbove, TicksBelow, TicksLeft, TicksRight } |
Propriétés
- tickInterval : int
- tickPosition : TickPosition
Fonctions publiques
| QSlider(QWidget *parent = nullptr) | |
| QSlider(Qt::Orientation orientation, QWidget *parent = nullptr) | |
| virtual | ~QSlider() |
| void | setTickInterval(int ti) |
| void | setTickPosition(QSlider::TickPosition position) |
| int | tickInterval() const |
| QSlider::TickPosition | tickPosition() const |
Fonctions publiques réimplémentées
| virtual bool | event(QEvent *event) override |
| virtual QSize | minimumSizeHint() const override |
| virtual QSize | sizeHint() const override |
Fonctions protégées
| virtual void | initStyleOption(QStyleOptionSlider *option) const |
Fonctions protégées réimplémentées
| virtual void | mouseMoveEvent(QMouseEvent *ev) override |
| virtual void | mousePressEvent(QMouseEvent *ev) override |
| virtual void | mouseReleaseEvent(QMouseEvent *ev) override |
| virtual void | paintEvent(QPaintEvent *ev) override |
Description détaillée

Le curseur est le widget classique permettant de contrôler une valeur limitée. Il permet à l'utilisateur de déplacer un curseur le long d'une glissière horizontale ou verticale et convertit la position du curseur en une valeur entière comprise dans la plage autorisée.
QSlider ne dispose que de très peu de fonctions propres ; la plupart des fonctionnalités se trouvent dans QAbstractSlider. Les fonctions les plus utiles sont setValue() pour régler directement le curseur sur une valeur donnée ; triggerAction() pour simuler les effets d’un clic (utile pour les raccourcis clavier) ; setSingleStep(), setPageStep() pour définir les incréments ; ainsi que setMinimum() et setMaximum() pour définir la plage de la barre de défilement.
QSlider fournit des méthodes permettant de contrôler les repères. Vous pouvez utiliser setTickPosition() pour indiquer où vous souhaitez que les repères apparaissent, et setTickInterval() pour indiquer leur nombre. La position et l’intervalle des repères actuellement définis peuvent être interrogés à l’aide des fonctions tickPosition() et tickInterval(), respectivement.
QSlider hérite d’un ensemble complet de signaux :
| Signal | Description |
|---|---|
| valueChanged() | Émis lorsque la valeur du curseur a changé. La fonction tracking() détermine si ce signal est émis lors d’une interaction de l’utilisateur. |
| sliderPressed() | Émis lorsque l'utilisateur commence à faire glisser le curseur. |
| sliderMoved() | Émis lorsque l'utilisateur fait glisser le curseur. |
| sliderReleased() | Émis lorsque l'utilisateur relâche le curseur. |
QSlider ne propose que des plages d'entiers. Notez que bien que QSlider gère des nombres très grands, il devient difficile pour les utilisateurs d'utiliser un curseur avec précision pour des plages très étendues.
Un curseur accepte le focus via la touche Tab et propose à la fois une interface par molette de souris et une interface clavier. L’interface clavier est la suivante :
- Gauche/Droite : déplace un curseur horizontal d'un pas.
- Les touches Haut/Bas déplacent un curseur vertical d’un pas.
- PagePréc. permet de remonter d'une page.
- PageDown permet de descendre d'une page.
- « Home » permet d'aller au début (minimum).
- Fin : se place à la fin (maximum).
Voir également QScrollBar, QSpinBox, QDial et l'exemple sur les curseurs.
Documentation sur les types de membres
enum QSlider::TickPosition
Cette énumération spécifie l'emplacement des repères par rapport à la rainure du curseur et à la poignée que l'utilisateur déplace.
| Constante | Valeur | Description |
|---|---|---|
QSlider::NoTicks | 0 | Ne dessiner aucune graduation. |
QSlider::TicksBothSides | 3 | Dessine des repères de chaque côté de la rainure. |
QSlider::TicksAbove | 1 | Dessiner des repères au-dessus du curseur (horizontal) |
QSlider::TicksBelow | 2 | Tracez des repères en dessous du curseur (horizontal) |
QSlider::TicksLeft | TicksAbove | Tracez des graduations à gauche du curseur (vertical) |
QSlider::TicksRight | TicksBelow | Tracez des repères à droite du curseur (vertical) |
Documentation sur les propriétés
tickInterval : int
Cette propriété définit l'intervalle entre les graduations
Il s'agit d'un intervalle de valeurs, et non d'un intervalle en pixels. Si la valeur est « 0 », le curseur choisira entre « singleStep » et « pageStep ».
La valeur par défaut est « 0 ». Les valeurs négatives ne sont pas valides et sont donc limitées à « 0 ».
Fonctions d’accès :
| int | tickInterval() const |
| void | setTickInterval(int ti) |
Voir également tickPosition, singleStep et pageStep.
tickPosition : TickPosition
Cette propriété stocke la position du repère pour ce curseur
Les valeurs valides sont décrites par l'énumération QSlider::TickPosition.
La valeur par défaut est QSlider::NoTicks.
Fonctions d'accès :
| QSlider::TickPosition | tickPosition() const |
| void | setTickPosition(QSlider::TickPosition position) |
Voir également tickInterval.
Documentation des fonctions membres
[explicit] QSlider::QSlider(QWidget *parent = nullptr)
Crée un curseur vertical avec l'parent on fournie.
[explicit] QSlider::QSlider(Qt::Orientation orientation, QWidget *parent = nullptr)
Crée un curseur avec l'parent spécifiée. Le paramètre orientation détermine si le curseur est horizontal ou vertical ; les valeurs valides sont Qt::Vertical et Qt::Horizontal.
[virtual noexcept] QSlider::~QSlider()
Supprime ce curseur.
[override virtual] bool QSlider::event(QEvent *event)
Réimplémente : QAbstractSlider::event(QEvent *e).
[virtual protected] void QSlider::initStyleOption(QStyleOptionSlider *option) const
Initialisez ` option ` avec les valeurs fournies à l'adresse suivante : QSlider. Cette méthode est utile pour les sous-classes qui ont besoin d'un ` QStyleOptionSlider`, mais ne souhaitent pas renseigner elles-mêmes toutes les informations.
Voir également QStyleOption::initFrom().
[override virtual] QSize QSlider::minimumSizeHint() const
Réimplémente une fonction d'accès pour la propriété : QWidget::minimumSizeHint.
[override virtual protected] void QSlider::mouseMoveEvent(QMouseEvent *ev)
Réimplémente : QWidget::mouseMoveEvent(QMouseEvent *event).
[override virtual protected] void QSlider::mousePressEvent(QMouseEvent *ev)
Réimplémente : QWidget::mousePressEvent(QMouseEvent *event).
[override virtual protected] void QSlider::mouseReleaseEvent(QMouseEvent *ev)
Réimplémente : QWidget::mouseReleaseEvent(QMouseEvent *event).
[override virtual protected] void QSlider::paintEvent(QPaintEvent *ev)
Réimplémente : QWidget::paintEvent(QPaintEvent *event).
[override virtual] QSize QSlider::sizeHint() const
Réimplémente une fonction d'accès pour la propriété : QWidget::sizeHint.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.