QSlider Class
Le widget QSlider permet de créer un curseur vertical ou horizontal. Plus d'informations...
| En-tête : | #include <QSlider> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Widgets)target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake : | QT += widgets |
| Héritages : | 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 pour contrôler une valeur délimitée. Il permet à l'utilisateur de déplacer une poignée le long d'une rainure horizontale ou verticale et traduit la position de la poignée en une valeur entière dans la plage légale.
QSlider possède très peu de fonctions propres ; la plupart d'entre elles se trouvent à l'adresse QAbstractSlider. Les fonctions les plus utiles sont setValue() pour régler le curseur directement sur une valeur donnée ; triggerAction() pour simuler les effets d'un clic (utile pour les touches de raccourci) ; setSingleStep(), setPageStep() pour régler les pas ; et setMinimum() et setMaximum() pour définir la portée de la barre de défilement.
QSlider fournit des méthodes pour contrôler les tickmarks. Vous pouvez utiliser setTickPosition() pour indiquer l'endroit où vous souhaitez que les tickmarks soient placés, setTickInterval() pour indiquer leur nombre. La position et l'intervalle des tickmarks 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() | Emis lorsque la valeur du curseur a changé. La fonction tracking() détermine si ce signal est émis lors de l'interaction avec l'utilisateur. |
| sliderPressed() | Emis lorsque l'utilisateur commence à faire glisser le curseur. |
| sliderMoved() | Emis lorsque l'utilisateur fait glisser le curseur. |
| sliderReleased() | Émise lorsque l'utilisateur relâche le curseur. |
QSlider ne fournit que des plages d'entiers. Notez que même si QSlider gère de très grands nombres, il devient difficile pour les utilisateurs d'utiliser un curseur avec précision pour de très grandes plages.
Un curseur accepte la focalisation sur la tabulation et fournit à la fois une molette de souris et une interface clavier. L'interface clavier est la suivante :
- Gauche/Droite déplace un curseur horizontal d'un seul pas.
- Haut/Bas : déplacement d'un curseur vertical d'un seul pas.
- PageUp permet de monter d'une page.
- PageDown permet de descendre d'une page.
- Home se déplace au début (minimum).
- Fin se déplace vers la fin (maximum).
Voir aussi QScrollBar, QSpinBox, QDial, et Sliders Example.
Documentation sur les types de membres
enum QSlider::TickPosition
Cette énumération spécifie l'endroit où les marques de contrôle doivent être dessinées par rapport à la rainure du curseur et à la poignée déplacée par l'utilisateur.
| Constante | Valeur | Description |
|---|---|---|
QSlider::NoTicks | 0 | Ne dessine aucun repère. |
QSlider::TicksBothSides | 3 | Dessine des marques de tic-tac de part et d'autre de la rainure. |
QSlider::TicksAbove | 1 | Dessiner des marques de tic-tac au-dessus du curseur (horizontal) |
QSlider::TicksBelow | 2 | Dessiner des marques de tic sous le curseur (horizontal) |
QSlider::TicksLeft | TicksAbove | Dessinez des marques de tic-tac à gauche du curseur (vertical) |
QSlider::TicksRight | TicksBelow | Dessinez des marques de tic-tac à droite du curseur (vertical) |
Documentation sur les propriétés
tickInterval : int
Cette propriété définit l'intervalle entre les points de repère
Il s'agit d'un intervalle de valeur et non d'un intervalle de pixels. S'il vaut 0, le curseur choisira entre singleStep et pageStep.
La valeur par défaut est 0.
Fonctions d'accès :
| int | tickInterval() const |
| void | setTickInterval(int ti) |
Voir aussi tickPosition, singleStep, et pageStep.
tickPosition : TickPosition
Cette propriété définit la position du tickmark pour ce curseur
Les valeurs valides sont décrites dans 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)
Construit un curseur vertical avec l'adresse parent.
[explicit] QSlider::QSlider(Qt::Orientation orientation, QWidget *parent = nullptr)
Construit un curseur avec le paramètre parent. 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()
Détruit ce curseur.
[override virtual] bool QSlider::event(QEvent *event)
Réimplémente : QAbstractSlider::event(QEvent *e).
[virtual protected] void QSlider::initStyleOption(QStyleOptionSlider *option) const
Initialiser option avec les valeurs de QSlider. Cette méthode est utile pour les sous-classes qui ont besoin d'un QStyleOptionSlider, mais qui ne veulent pas remplir toutes les informations elles-mêmes.
Voir aussi QStyleOption::initFrom().
[override virtual] QSize QSlider::minimumSizeHint() const
Réimplémente une fonction d'accès à 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 à 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.