Класс QAbstractSlider
Класс QAbstractSlider предоставляет целое значение в заданном диапазоне. Подробнее...
| Заголовок: | #include <QAbstractSlider> |
| qmake: | QT += widgets |
| Наследует: | QWidget |
| Наследуется от: |
Типы публичного доступа
| Перечисление | SliderAction { SliderNoAction, SliderSingleStepAdd, SliderSingleStepSub, SliderPageStepAdd, SliderPageStepSub, …, SliderMove } |
Свойства
|
|
Публичные функции
| QAbstractSlider(QWidget *parent = nullptr) | |
| virtual | ~QAbstractSlider() |
| bool | hasTracking() const |
| bool | invertedAppearance() const |
| bool | invertedControls() const |
| bool | isSliderDown() const |
| int | maximum() const |
| int | minimum() const |
| Qt::Orientation | orientation() const |
| int | pageStep() const |
| void | setInvertedAppearance(bool) |
| void | setInvertedControls(bool) |
| void | setMaximum(int) |
| void | setMinimum(int) |
| void | setPageStep(int) |
| void | setSingleStep(int) |
| void | setSliderDown(bool) |
| void | setSliderPosition(int) |
| void | setTracking(bool enable) |
| int | singleStep() const |
| int | sliderPosition() const |
| void | triggerAction(QAbstractSlider::SliderAction action) |
| int | value() const |
Свойства публичного доступа
| void | setOrientation(Qt::Orientation) |
| void | setRange(int min, int max) |
| void | setValue(int) |
Сигналы
| void | actionTriggered(int action) |
| void | rangeChanged(int min, int max) |
| void | sliderMoved(int value) |
| void | sliderPressed() |
| void | sliderReleased() |
| void | valueChanged(int value) |
Защищенные типы
| enum | SliderChange { SliderRangeChange, SliderOrientationChange, SliderStepsChange, SliderValueChange } |
Защищенные функции
| QAbstractSlider::SliderAction | repeatAction() const |
| void | setRepeatAction(QAbstractSlider::SliderAction action, int thresholdTime = 500, int repeatTime = 50) |
| virtual void | sliderChange(QAbstractSlider::SliderChange change) |
Переопределённые защищённые функции
| virtual void | changeEvent(QEvent *ev) override |
| virtual bool | event(QEvent *e) override |
| virtual void | keyPressEvent(QKeyEvent *ev) override |
| virtual void | timerEvent(QTimerEvent *e) override |
| virtual void | wheelEvent(QWheelEvent *e) override |
Подробное описание
Класс разработан как общий базовый класс для виджетов, таких как QScrollBar, QSlider и QDial.
Вот основные свойства класса:
- значение: Целое число, которое QAbstractSlider сохраняет в границах.
- минимальное значение: Наименьшее возможное значение.
- максимальное значение: Наибольшее возможное значение.
- шаг: Меньший из двух естественных шагов, которые предоставляет абстрактный ползунок, и обычно соответствует нажатию пользователем клавиши со стрелкой.
- шаг страницы: Больший из двух естественных шагов, которые предоставляет абстрактный ползунок, и обычно соответствует нажатию пользователем клавиш PageUp или PageDown.
- отслеживание: Включено ли отслеживание ползунка.
- положение ползунка: Текущее положение ползунка. Если отслеживание включено (по умолчанию), оно идентично значению значение.
Единица (1) может рассматриваться как третий размер шага. setValue() позволяет установить текущее значение на любое целое число в разрешенном диапазоне, а не только минимальное значение() + n * шаг() для целых значений n. Некоторые виджеты могут позволить пользователю устанавливать любое значение вообще; другие могут предоставлять только кратные значения шага или шага страницы.
QAbstractSlider испускает полный набор сигналов:
| Сигнал | Выпускается, когда |
|---|---|
| valueChanged() | значение изменилось. отслеживание определяет, испускается ли этот сигнал во время взаимодействия пользователя. |
| sliderPressed() | пользователь начинает перетаскивать ползунок. |
| sliderMoved() | пользователь перетаскивает ползунок. |
| sliderReleased() | пользователь отпускает ползунок. |
| actionTriggered() | было выполнено действие ползунка. |
| rangeChanged() | диапазон изменился. |
QAbstractSlider предоставляет виртуальную функцию sliderChange(), которая хорошо подходит для обновления визуального представления ползунков на экране. Вызвав triggerAction(), подклассы запускают действия ползунка. Две вспомогательные функции QStyle::sliderPositionFromValue() и QStyle::sliderValueFromPosition() помогают подклассам и стилям сопоставлять координаты экрана с логическими значениями диапазона.
См. такжеQAbstractSpinBox, QSlider, QDial, QScrollBar и Пример ползунков.
Документация типов членов
перечисление QAbstractSlider::SliderAction
| Постоянная | Значение |
|---|---|
QAbstractSlider::SliderNoAction |
0 |
QAbstractSlider::SliderSingleStepAdd |
1 |
QAbstractSlider::SliderSingleStepSub |
2 |
QAbstractSlider::SliderPageStepAdd |
3 |
QAbstractSlider::SliderPageStepSub |
4 |
QAbstractSlider::SliderToMinimum |
5 |
QAbstractSlider::SliderToMaximum |
6 |
QAbstractSlider::SliderMove |
7 |
перечисление QAbstractSlider::SliderChange
| Постоянная | Значение |
|---|---|
QAbstractSlider::SliderRangeChange |
0 |
QAbstractSlider::SliderOrientationChange |
1 |
QAbstractSlider::SliderStepsChange |
2 |
QAbstractSlider::SliderValueChange |
3 |
Документация свойств
invertedAppearance : bool
Это свойство указывает, отображаются ли значения ползунка инвертированно.
Если это свойство равно false (значение по умолчанию), минимальное и максимальное значения будут отображаться в стандартном положении для наследовавшегося виджета. Если значение равно true, минимальное и максимальное значения отображаются в противоположном положении.
Примечание: Это свойство наиболее уместно для ползунков и дисков. Для полос прокрутки визуальный эффект подконтролей полосы прокрутки зависит от того, понимает ли стиль инвертированное отображение; большинство стилей игнорируют это свойство для полос прокрутки.
Функции доступа:
| bool | invertedAppearance() const |
| void | setInvertedAppearance(bool) |
invertedControls : bool
Это свойство указывает, инвертирует ли ползунок события колесика мыши и клавиш.
Если это свойство равно false, прокрутка колесика мыши «вверх» и использование клавиш, таких как Page Up, увеличит значение ползунка в сторону максимального значения. В противном случае нажатие Page Up переместит значение к минимальному значению ползунка.
Функции доступа:
| bool | invertedControls() const |
| void | setInvertedControls(bool) |
maximum : int
Это свойство хранит максимальное значение ползунка.
При установке этого свойства минимальное значение корректируется при необходимости, чтобы диапазон оставался допустимым. Также текущее значение ползунка корректируется, чтобы находиться в пределах нового диапазона.
Функции доступа:
| int | maximum() const |
| void | setMaximum(int) |
minimum : int
Это свойство хранит минимальное значение ползунка.
При установке этого свойства максимальное значение корректируется при необходимости, чтобы диапазон оставался допустимым. Также текущее значение ползунка корректируется, чтобы находиться в пределах нового диапазона.
Функции доступа:
| int | minimum() const |
| void | setMinimum(int) |
orientation : Qt::Orientation
Это свойство хранит ориентацию ползунка.
Ориентация должна быть Qt::Vertical (значение по умолчанию) или Qt::Horizontal.
Функции доступа:
| Qt::Orientation | orientation() const |
| void | setOrientation(Qt::Orientation) |
pageStep : int
Это свойство хранит шаг страницы.
Больший из двух естественных шагов, которые предоставляет абстрактный ползунок, и обычно соответствует нажатию пользователя на PageUp или PageDown.
Функции доступа:
| int | pageStep() const |
| void | setPageStep(int) |
См. также singleStep.
singleStep : int
Это свойство хранит шаг.
Меньший из двух естественных шагов, которые предоставляет абстрактный ползунок, и обычно соответствует нажатию пользователем клавиши со стрелкой.
Если свойство изменяется во время события автоматического повторения нажатия клавиши, поведение не определено.
Функции доступа:
| int | singleStep() const |
| void | setSingleStep(int) |
См. также pageStep.
sliderDown : bool
Это свойство указывает, нажат ли ползунок.
Подклассы устанавливают свойство, чтобы сообщить абстрактному ползунку, оказывает ли отслеживание какое-либо влияние.
Изменение свойства sliderDown вызывает сигналы sliderPressed() и sliderReleased().
Функции доступа:
| bool | isSliderDown() const |
| void | setSliderDown(bool) |
sliderPosition : int
Это свойство хранит текущее положение ползунка.
Если отслеживание включено (значение по умолчанию), оно идентично value.
Функции доступа:
| int | sliderPosition() const |
| void | setSliderPosition(int) |
Сигнал уведомления:
| void | sliderMoved(int value) |
tracking : bool
Это свойство указывает, включено ли отслеживание ползунка.
Если отслеживание включено (значение по умолчанию), ползунок испускает сигнал valueChanged() во время перетаскивания. Если отслеживание отключено, ползунок испускает сигнал valueChanged() только при отпускании ползунка.
Функции доступа:
| bool | hasTracking() const |
| void | setTracking(bool enable) |
См. также sliderDown.
value : int
Это свойство хранит текущее значение ползунка.
Ползунок заставляет значение находиться в допустимом диапазоне: minimum <= value <= maximum.
Изменение значения также изменяет sliderPosition.
Функции доступа:
| int | value() const |
| void | setValue(int) |
Сигнал уведомления:
| void | valueChanged(int value) |
Документация функций-членов
QAbstractSlider::QAbstractSlider(QWidget *parent = nullptr)
Конструирует абстрактный ползунок.
Аргумент parent передается конструктору QWidget.
По умолчанию минимальное значение равно 0, максимальное — 99, размер singleStep — 1, размер pageStep — 10, начальное значение value — 0.
[signal] void QAbstractSlider::actionTriggered(int action)
Этот сигнал испускается при срабатывании действия ползунка action. Действия — SliderSingleStepAdd, SliderSingleStepSub, SliderPageStepAdd, SliderPageStepSub, SliderToMinimum, SliderToMaximum и SliderMove.
При выводе сигнала, sliderPosition был откорректирован в соответствии с действием, но значение ещё не было распространено (что означает, что сигнал valueChanged() ещё не был выведен), и визуальное отображение ещё не обновлено. В слотах, подключенных к этому сигналу, вы можете безопасно отрегулировать любое действие, вызвав setSliderPosition() самостоятельно, основываясь на действии и значении ползунка.
См. также triggerAction().
[signal] void QAbstractSlider::rangeChanged(int min, int max)
Этот сигнал генерируется при изменении диапазона ползунка, где min — новое минимальное значение, а max — новое максимальное значение.
[slot] void QAbstractSlider::setRange(int min, int max)
Устанавливает минимальное значение ползунка в min, а максимальное — в max.
Если max меньше min, min становится единственным допустимым значением.
[signal] void QAbstractSlider::sliderMoved(int value)
Этот сигнал генерируется, когда sliderDown имеет значение true и ползунок перемещается. Обычно это происходит, когда пользователь перетаскивает ползунок. Значение value — новая позиция ползунка.
Этот сигнал генерируется даже при отключенном отслеживании.
Примечание: Сигнал-уведомление для свойства sliderPosition.
См. также setTracking(), valueChanged(), isSliderDown(), sliderPressed() и sliderReleased().
[signal] void QAbstractSlider::sliderPressed()
Этот сигнал генерируется, когда пользователь нажимает на ползунок мышкой или программно, когда вызывается setSliderDown(true).
См. также sliderReleased(), sliderMoved() и isSliderDown().
[signal] void QAbstractSlider::sliderReleased()
Этот сигнал генерируется, когда пользователь отпускает ползунок мышкой или программно, когда вызывается setSliderDown(false).
См. также sliderPressed(), sliderMoved() и sliderDown.
[signal] void QAbstractSlider::valueChanged(int value)
Этот сигнал генерируется при изменении значения ползунка, а аргументом является новое значение value ползунка.
Примечание: Сигнал-уведомление для свойства value.
[virtual] QAbstractSlider::~QAbstractSlider()
Удаляет ползунок.
[override virtual protected] void QAbstractSlider::changeEvent(QEvent *ev)
Переопределяет: QWidget::changeEvent(QEvent *event).
[override virtual protected] bool QAbstractSlider::event(QEvent *e)
Переопределяет: QWidget::event(QEvent *event).
[override virtual protected] void QAbstractSlider::keyPressEvent(QKeyEvent *ev)
Переопределяет: QWidget::keyPressEvent(QKeyEvent *event).
[protected] QAbstractSlider::SliderAction QAbstractSlider::repeatAction() const
Возвращает текущее действие повтора.
См. также setRepeatAction().
[protected] void QAbstractSlider::setRepeatAction(QAbstractSlider::SliderAction action, int thresholdTime = 500, int repeatTime = 50)
Устанавливает действие action для повторного срабатывания через интервалы repeatTime после начальной задержки thresholdTime.
См. также triggerAction() и repeatAction().
[virtual protected] void QAbstractSlider::sliderChange(QAbstractSlider::SliderChange change)
Переопределите эту виртуальную функцию для отслеживания изменений ползунка, таких как SliderRangeChange, SliderOrientationChange, SliderStepsChange или SliderValueChange. По умолчанию выполняется только обновление отображения и параметр change игнорируется.
[override virtual protected] void QAbstractSlider::timerEvent(QTimerEvent *e)
Переопределяет: QObject::timerEvent(QTimerEvent *event).
void QAbstractSlider::triggerAction(QAbstractSlider::SliderAction action)
Вызывает действие ползунка action. Возможные действия: SliderSingleStepAdd, SliderSingleStepSub, SliderPageStepAdd, SliderPageStepSub, SliderToMinimum, SliderToMaximum и SliderMove.
См. также actionTriggered().
[override virtual protected] void QAbstractSlider::wheelEvent(QWheelEvent *e)
Переопределяет: QWidget::wheelEvent(QWheelEvent *event).
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.14/qabstractslider.html