QSlider Class

Das QSlider-Widget bietet einen vertikalen oder horizontalen Schieberegler. Mehr...

Kopfzeile: #include <QSlider>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
Vererbungen: QAbstractSlider

Öffentliche Typen

enum TickPosition { NoTicks, TicksBothSides, TicksAbove, TicksBelow, TicksLeft, TicksRight }

Eigenschaften

Öffentliche Funktionen

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

Reimplementierte öffentliche Funktionen

virtual bool event(QEvent *event) override
virtual QSize minimumSizeHint() const override
virtual QSize sizeHint() const override

Geschützte Funktionen

virtual void initStyleOption(QStyleOptionSlider *option) const

Reimplementierte geschützte Funktionen

virtual void mouseMoveEvent(QMouseEvent *ev) override
virtual void mousePressEvent(QMouseEvent *ev) override
virtual void mouseReleaseEvent(QMouseEvent *ev) override
virtual void paintEvent(QPaintEvent *ev) override

Detaillierte Beschreibung

Der Schieberegler ist das klassische Widget zur Steuerung eines begrenzten Wertes. Es erlaubt dem Benutzer einen Schieberegler entlang einer horizontalen oder vertikalen Rille zu bewegen und übersetzt die Position des Schieberegler in einen Integer-Wert innerhalb des zulässigen Bereichs.

QSlider hat nur sehr wenige eigene Funktionen; der Großteil der Funktionalität befindet sich in QAbstractSlider. Die nützlichsten Funktionen sind setValue(), um den Schieberegler direkt auf einen Wert zu setzen; triggerAction(), um die Auswirkungen eines Klicks zu simulieren (nützlich für Tastenkombinationen); setSingleStep(), setPageStep(), um die Schritte zu setzen; und setMinimum() und setMaximum(), um den Bereich der Bildlaufleiste zu definieren.

QSlider bietet Methoden zur Steuerung von Tickmarks. Sie können setTickPosition() verwenden, um anzugeben, wo die Häkchen sein sollen, setTickInterval(), um anzugeben, wie viele davon Sie haben möchten. Die aktuell eingestellte Häkchenposition und das Intervall können mit den Funktionen tickPosition() und tickInterval() abgefragt werden.

QSlider erbt einen umfassenden Satz von Signalen:

SignalBeschreibung
valueChanged()Wird ausgesendet, wenn sich der Wert des Schiebereglers geändert hat. Die Funktion tracking() bestimmt, ob dieses Signal während der Benutzerinteraktion ausgegeben wird.
sliderPressed()Wird ausgegeben, wenn der Benutzer beginnt, den Schieberegler zu ziehen.
sliderMoved()Wird ausgesendet, wenn der Benutzer den Schieberegler zieht.
sliderReleased()Wird ausgegeben, wenn der Benutzer den Schieberegler loslässt.

QSlider bietet nur Integer-Bereiche. Beachten Sie, dass QSlider zwar sehr große Zahlen verarbeiten kann, es aber für den Benutzer schwierig wird, einen Schieberegler für sehr große Bereiche genau zu verwenden.

Ein Schieberegler akzeptiert den Fokus auf Tab und bietet sowohl ein Mausrad als auch eine Tastaturschnittstelle. Die Tastaturschnittstelle sieht folgendermaßen aus:

  • Links/Rechts verschiebt einen horizontalen Schieberegler um einen Schritt.
  • Auf/Ab verschiebt einen vertikalen Schieberegler um einen Schritt.
  • PageUp bewegt sich eine Seite nach oben.
  • PageDown bewegt sich eine Seite nach unten.
  • Home bewegt sich an den Anfang (Minimum).
  • Ende bewegt sich zum Ende (Maximum).

Siehe auch QScrollBar, QSpinBox, QDial, und Sliders Example.

Dokumentation der Mitgliedstypen

enum QSlider::TickPosition

Diese Aufzählung gibt an, wo die Häkchen relativ zur Rille des Schiebereglers und zum Griff, den der Benutzer bewegt, gezeichnet werden sollen.

KonstanteWertBeschreibung
QSlider::NoTicks0Keine Markierungen zeichnen.
QSlider::TicksBothSides3Markierungen auf beiden Seiten der Rille zeichnen.
QSlider::TicksAbove1Häkchen oberhalb des (horizontalen) Schiebereglers zeichnen
QSlider::TicksBelow2Markierungen unterhalb des (horizontalen) Schiebereglers zeichnen
QSlider::TicksLeftTicksAboveZeichnen Sie Markierungen links vom (vertikalen) Schieberegler
QSlider::TicksRightTicksBelowZeichnen Sie Markierungen rechts vom (vertikalen) Schieberegler.

Eigenschaft Dokumentation

tickInterval : int

Diese Eigenschaft enthält das Intervall zwischen Tickmarks

Dabei handelt es sich um ein Wertintervall, nicht um ein Pixelintervall. Wenn sie 0 ist, wählt der Schieberegler zwischen singleStep und pageStep.

Der Standardwert ist 0.

Zugriffsfunktionen:

int tickInterval() const
void setTickInterval(int ti)

Siehe auch tickPosition, singleStep, und pageStep.

tickPosition : TickPosition

Diese Eigenschaft enthält die Position des Häkchens für diesen Schieberegler

Die gültigen Werte werden in der Aufzählung QSlider::TickPosition beschrieben.

Der Standardwert ist QSlider::NoTicks.

Zugriffsfunktionen:

QSlider::TickPosition tickPosition() const
void setTickPosition(QSlider::TickPosition position)

Siehe auch tickInterval.

Dokumentation der Mitgliedsfunktionen

[explicit] QSlider::QSlider(QWidget *parent = nullptr)

Konstruiert einen vertikalen Schieberegler mit dem angegebenen parent.

[explicit] QSlider::QSlider(Qt::Orientation orientation, QWidget *parent = nullptr)

Konstruiert einen Schieberegler mit dem angegebenen parent. Der Parameter orientation bestimmt, ob der Schieberegler horizontal oder vertikal ist; die gültigen Werte sind Qt::Vertical und Qt::Horizontal.

[virtual noexcept] QSlider::~QSlider()

Zerstört diesen Schieberegler.

[override virtual] bool QSlider::event(QEvent *event)

Reimplements: QAbstractSlider::event(QEvent *e).

[virtual protected] void QSlider::initStyleOption(QStyleOptionSlider *option) const

Initialisieren Sie option mit den Werten aus dieser QSlider. Diese Methode ist nützlich für Unterklassen, wenn sie eine QStyleOptionSlider benötigen, aber nicht alle Informationen selbst eingeben wollen.

Siehe auch QStyleOption::initFrom().

[override virtual] QSize QSlider::minimumSizeHint() const

Reimplantiert eine Zugriffsfunktion für die Eigenschaft: QWidget::minimumSizeHint.

[override virtual protected] void QSlider::mouseMoveEvent(QMouseEvent *ev)

Reimplements: QWidget::mouseMoveEvent(QMouseEvent *event).

[override virtual protected] void QSlider::mousePressEvent(QMouseEvent *ev)

Reimplements: QWidget::mousePressEvent(QMouseEvent *event).

[override virtual protected] void QSlider::mouseReleaseEvent(QMouseEvent *ev)

Reimplements: QWidget::mouseReleaseEvent(QMouseEvent *event).

[override virtual protected] void QSlider::paintEvent(QPaintEvent *ev)

Reimplements: QWidget::paintEvent(QPaintEvent *event).

[override virtual] QSize QSlider::sizeHint() const

Reimplantiert eine Zugriffsfunktion für die Eigenschaft: QWidget::sizeHint.

© 2025 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.