QDial Class
La classe QDial fournit une commande de plage arrondie (comme un indicateur de vitesse ou un potentiomètre). Plus d'informations...
| En-tête : | #include <QDial> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Widgets)target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake : | QT += widgets |
| Héritages : | QAbstractSlider |
Propriétés
- notchSize : int
- notchTarget : qreal
- notchesVisible : bool
- wrapping : bool
Fonctions publiques
| QDial(QWidget *parent = nullptr) | |
| virtual | ~QDial() |
| int | notchSize() const |
| qreal | notchTarget() const |
| bool | notchesVisible() const |
| void | setNotchTarget(double target) |
| bool | wrapping() const |
Fonctions publiques réimplémentées
| virtual QSize | minimumSizeHint() const override |
| virtual QSize | sizeHint() const override |
Emplacements publics
| void | setNotchesVisible(bool visible) |
| void | setWrapping(bool on) |
Fonctions protégées
| virtual void | initStyleOption(QStyleOptionSlider *option) const |
Fonctions protégées réimplémentées
| virtual bool | event(QEvent *e) override |
| virtual void | mouseMoveEvent(QMouseEvent *e) override |
| virtual void | mousePressEvent(QMouseEvent *e) override |
| virtual void | mouseReleaseEvent(QMouseEvent *e) override |
| virtual void | paintEvent(QPaintEvent *pe) override |
| virtual void | resizeEvent(QResizeEvent *e) override |
| virtual void | sliderChange(QAbstractSlider::SliderChange change) override |
Description détaillée

QDial est utilisé lorsque l'utilisateur a besoin de contrôler une valeur dans une plage définie par le programme, et que cette plage s'étend (par exemple, avec des angles mesurés de 0 à 359 degrés) ou que la présentation de la boîte de dialogue nécessite un widget carré.
Puisque QDial hérite de QAbstractSlider, le cadran se comporte de la même manière qu'un slider. Lorsque wrapping() est faux (paramètre par défaut), il n'y a pas de réelle différence entre un curseur et un cadran. Ils partagent tous deux les mêmes signaux, les mêmes emplacements et les mêmes fonctions membres. Le choix de l'un ou l'autre dépend des attentes de vos utilisateurs et du type d'application.
Le cadran émet initialement des signaux valueChanged() en continu lorsque le curseur est déplacé ; vous pouvez faire en sorte qu'il émette le signal moins souvent en désactivant la propriété tracking. Le signal sliderMoved() est émis en continu même lorsque le suivi est désactivé.
Le cadran émet également les signaux sliderPressed() et sliderReleased() lorsque le bouton de la souris est enfoncé et relâché. Notez que la valeur du cadran peut changer sans que ces signaux soient émis puisque le clavier et la molette peuvent également être utilisés pour modifier la valeur.
Contrairement au curseur, QDial tente de dessiner un "bon" nombre d'encoches plutôt qu'une par pas de ligne. Si possible, le nombre d'encoches dessinées est d'une par pas de ligne, mais s'il n'y a pas assez de pixels pour les dessiner toutes, QDial saute des encoches pour essayer de dessiner un ensemble uniforme (par exemple, en dessinant une encoche sur deux ou sur trois).
Comme le curseur, le cadran met à disposition la fonction QAbstractSlider setValue () en tant qu'emplacement.
L'interface clavier du cadran est assez simple : Les touches fléchées left/up et right/down ajustent la valeur du cadran value en fonction de la valeur définie singleStep, Page Up et Page Down en fonction de la valeur définie pageStep, et les touches Home et End fixent la valeur aux valeurs définies minimum et maximum.
Si vous utilisez la molette de la souris pour régler le cadran, la valeur d'incrémentation est déterminée par la plus petite valeur de wheelScrollLines multipliée par singleStep, et pageStep.
Voir également QScrollBar, QSpinBox, QSlider, et Sliders Example.
Documentation sur les propriétés
[read-only] notchSize : int
Cette propriété contient la taille actuelle de l'encoche
La taille de l'encoche est exprimée en unités de contrôle de la portée, et non en pixels, et est calculée pour être un multiple de singleStep() qui permet d'obtenir une taille d'encoche à l'écran proche de notchTarget().
Fonctions d'accès :
| int | notchSize() const |
Voir également notchTarget() et singleStep().
notchTarget : qreal
Cette propriété contient le nombre cible de pixels entre les encoches
L'objectif d'encoche est le nombre de pixels que QDial tente de placer entre chaque encoche.
La taille réelle peut différer de la taille cible.
La cible par défaut est de 3,7 pixels.
Fonctions d'accès :
| qreal | notchTarget() const |
| void | setNotchTarget(double target) |
notchesVisible : bool
Cette propriété indique si les encoches sont affichées
Si la propriété est true, une série d'encoches est dessinée autour du cadran pour indiquer la plage de valeurs disponibles ; dans le cas contraire, aucune encoche n'est affichée.
Par défaut, cette propriété est désactivée.
Fonctions d'accès :
| bool | notchesVisible() const |
| void | setNotchesVisible(bool visible) |
wrapping : bool
Cette propriété indique si l'habillage est activé
Si true, l'habillage est activé ; sinon, un espace est inséré au bas du cadran pour séparer les extrémités de la plage de valeurs valides.
Si cette propriété est activée, la flèche peut être orientée selon n'importe quel angle sur le cadran. Si elle est désactivée, la flèche sera limitée à la partie supérieure du cadran ; si elle est tournée dans l'espace au bas du cadran, elle sera bloquée à l'extrémité la plus proche de la plage de valeurs valides.
Par défaut, cette propriété est false.
Fonctions d'accès :
| bool | wrapping() const |
| void | setWrapping(bool on) |
Documentation des fonctions membres
[explicit] QDial::QDial(QWidget *parent = nullptr)
Construit un cadran.
L'argument parent est envoyé au constructeur QAbstractSlider.
[virtual noexcept] QDial::~QDial()
Détruit le cadran.
[override virtual protected] bool QDial::event(QEvent *e)
Réimplémente : QAbstractSlider::event(QEvent *e).
[virtual protected] void QDial::initStyleOption(QStyleOptionSlider *option) const
Initialiser option avec les valeurs de QDial. 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 QDial::minimumSizeHint() const
Réimplémente une fonction d'accès à la propriété : QWidget::minimumSizeHint.
[override virtual protected] void QDial::mouseMoveEvent(QMouseEvent *e)
Réimplémente : QWidget::mouseMoveEvent(QMouseEvent *event).
[override virtual protected] void QDial::mousePressEvent(QMouseEvent *e)
Réimplémente : QWidget::mousePressEvent(QMouseEvent *event).
[override virtual protected] void QDial::mouseReleaseEvent(QMouseEvent *e)
Réimplémente : QWidget::mouseReleaseEvent(QMouseEvent *event).
[override virtual protected] void QDial::paintEvent(QPaintEvent *pe)
Réimplémente : QWidget::paintEvent(QPaintEvent *event).
[override virtual protected] void QDial::resizeEvent(QResizeEvent *e)
Réimplémente : QWidget::resizeEvent(QResizeEvent *event).
[override virtual] QSize QDial::sizeHint() const
Réimplémente une fonction d'accès à la propriété : QWidget::sizeHint.
[override virtual protected] void QDial::sliderChange(QAbstractSlider::SliderChange change)
Réimplémente : QAbstractSlider::sliderChange(QAbstractSlider::SliderChange change).
© 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.