Auf dieser Seite

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
Erbt von: 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

Neu implementierte ö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

Neu implementierte 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

Ausführliche Beschreibung

Horizontaler Schieberegler mit Markierungen

Der Schieberegler ist das klassische Widget zur Steuerung eines begrenzten Werts. Er ermöglicht es dem Benutzer, einen Schieberegler-Griff entlang einer horizontalen oder vertikalen Nut zu bewegen, und wandelt die Position des Griffs in einen ganzzahligen Wert innerhalb des zulässigen Bereichs um.

QSlider verfügt über 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 bestimmten Wert zu setzen; „ triggerAction()“, um die Auswirkungen eines Klicks zu simulieren (nützlich für Tastenkombinationen); „ setSingleStep(), setPageStep() zum Festlegen der Schritte sowie setMinimum() und setMaximum() zum Definieren des Bereichs der Bildlaufleiste.

QSlider bietet Methoden zur Steuerung der Skalenstriche. Mit „ setTickPosition()“ können Sie angeben, wo die Skalenstriche platziert werden sollen, und mit „ setTickInterval()“, wie viele davon vorhanden sein sollen. Die aktuell eingestellte Skalenstrichposition und das Intervall können mit den Funktionen „ tickPosition()“ bzw. „ tickInterval()“ abgefragt werden.

QSlider verfügt über einen umfassenden Satz an Signalen:

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

QSlider bietet nur ganzzahlige Bereiche an. Beachten Sie, dass QSlider zwar sehr große Zahlen verarbeiten kann, es für Benutzer jedoch schwierig wird, einen Schieberegler bei sehr großen Bereichen präzise zu bedienen.

Ein Schieberegler erhält den Fokus bei der Tabulatortaste und bietet sowohl eine Mausrad- als auch eine Tastatursteuerung. Die Tastatursteuerung funktioniert wie folgt:

  • Links/Rechts verschieben einen horizontalen Schieberegler um einen einzelnen Schritt.
  • „Auf“/„Ab“ verschieben einen vertikalen Schieberegler um einen einzelnen Schritt.
  • „Bild auf“ bewegt eine Seite nach oben.
  • „Bild nach unten“ bewegt eine Seite nach unten.
  • „Home“ springt zum Anfang (Minimum).
  • „End“ springt zum Ende (Maximum).

Siehe auch „ QScrollBar“ , „ QSpinBox “, „ QDial “ und das Beispiel zu Schiebereglern.

Dokumentation zu Mitgliedstypen

enum QSlider::TickPosition

Diese Enumeration legt fest, wo die Skalenmarkierungen relativ zur Rille des Schiebereglers und zum Schiebeknopf, den der Benutzer bewegt, eingezeichnet werden sollen.

KonstanteWertBeschreibung
QSlider::NoTicks0Es werden keine Skalenstriche gezeichnet.
QSlider::TicksBothSides3Zeichnet Skalenmarkierungen auf beiden Seiten der Nut.
QSlider::TicksAbove1Zeichnen Sie Skalenstriche oberhalb des (horizontalen) Schiebereglers
QSlider::TicksBelow2Zeichnen Sie Markierungen unterhalb des (horizontalen) Schiebereglers
QSlider::TicksLeftTicksAboveZeichnen Sie Markierungen links vom (vertikalen) Schieberegler
QSlider::TicksRightTicksBelowZeichnen Sie Markierungen rechts vom (vertikalen) Schieberegler

Eigenschaftsdokumentation

tickInterval : int

Diese Eigenschaft legt das Intervall zwischen den Markierungen fest

Es handelt sich hierbei um ein Werteintervall, nicht um ein Pixelintervall. Wenn der Wert „ 0 “ lautet, wählt der Schieberegler zwischen „singleStep“ und „pageStep“.

Der Standardwert ist „ 0 “. Negative Werte sind ungültig und werden daher auf „ 0 “ begrenzt.

Zugriffsfunktionen:

int tickInterval() const
void setTickInterval(int ti)

Siehe auch „ tickPosition “, „ singleStep “ und „ pageStep “.

tickPosition : TickPosition

Diese Eigenschaft enthält die Position der Markierung für diesen Schieberegler

Die zulässigen Werte werden durch die Enumeration „ 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)

Erstellt einen vertikalen Schieberegler mit dem angegebenen „ parent “.

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

Erstellt einen Schieberegler mit dem angegebenen Parameter „ parent “. Der Parameter „ orientation “ legt fest, ob der Schieberegler horizontal oder vertikal ausgerichtet ist; gültige Werte sind „ Qt::Vertical “ und „ Qt::Horizontal “.

[virtual noexcept] QSlider::~QSlider()

Löscht diesen Schieberegler.

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

Implementiert: ` QAbstractSlider::event(QEvent *e)`.

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

Initialisieren Sie ` option ` mit den Werten aus dieser Datei: QSlider. Diese Methode ist für Unterklassen nützlich, wenn diese ein ` QStyleOptionSlider` benötigen, aber nicht alle Informationen selbst eingeben möchten.

Siehe auch ` QStyleOption::initFrom()`.

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

Implementiert eine Zugriffsfunktion für die Eigenschaft „ QWidget::minimumSizeHint “ neu.

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

Implementiert: ` QWidget::mouseMoveEvent(QMouseEvent *event)`.

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

Implementiert: ` QWidget::mousePressEvent` (`QMouseEvent *event`).

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

Implementiert: ` QWidget::mouseReleaseEvent` (`QMouseEvent *event`).

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

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

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

Implementiert eine Zugriffsfunktion für die Eigenschaft „ QWidget::sizeHint “ neu.

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