Класс QAbstractSlider
Класс QAbstractSlider предоставляет целое значение в заданном диапазоне. Подробнее...
| Заголовок: | #include <QAbstractSlider> |
| qmake: | QT += widgets |
| Наследует: | QWidget |
| Наследуется от: |
Типы публичного доступа
| перечисление | SliderAction { SliderNoAction, SliderSingleStepAdd, SliderSingleStepSub, SliderPageStepAdd, ..., 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 |
- 214 функций публичного доступа, унаследованных от QWidget
- 31 функция публичного доступа, унаследованная от QObject
- 14 функций публичного доступа, унаследованных от QPaintDevice
Свойства-слоты
| 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) |
Статические члены публичного доступа
| const QMetaObject | staticMetaObject |
- 5 статических членов публичного доступа, унаследованных от QWidget
- 9 статических членов публичного доступа, унаследованных от QObject
Защищённые типы
| перечисление | 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) |
Переопределённые защищённые функции
| виртуальный void | changeEvent(QEvent *ev) override |
| виртуальный bool | event(QEvent *e) override |
| виртуальный void | keyPressEvent(QKeyEvent *ev) override |
| виртуальный void | timerEvent(QTimerEvent *e) override |
| виртуальный void | wheelEvent(QWheelEvent *e) override |
- 35 защищённых функций, унаследованных от QWidget
- 9 защищённых функций, унаследованных от QObject
- 1 защищённая функция, унаследованная от QPaintDevice
Дополнительные унаследованные члены
- 1 защищённый слот, унаследованный от QWidget
Подробное описание
Класс QAbstractSlider предоставляет целое значение в заданном диапазоне.
Класс разработан как общий базовый класс для виджетов, таких как QScrollBar, QSlider и QDial.
Вот основные свойства класса:
- value: Ограниченное целое число, которое QAbstractSlider поддерживает.
- minimum: Наименьшее возможное значение.
- maximum: Наибольшее возможное значение.
- singleStep: Меньший из двух естественных шагов, которые предоставляет абстрактный ползунок, и обычно соответствует нажатию пользователем клавиши со стрелкой.
- pageStep: Больший из двух естественных шагов, которые предоставляет абстрактный ползунок, и обычно соответствует нажатию пользователем клавиш PageUp или PageDown.
- tracking: Включено ли отслеживание ползунка.
- sliderPosition: Текущее положение ползунка. Если tracking включено (по умолчанию), это идентично value.
Единица (1) может рассматриваться как третий шаг. setValue() позволяет установить текущее значение на любое целое число в допустимом диапазоне, а не только minimum() + n * singleStep() для целых значений n. Некоторые виджеты могут позволять пользователю устанавливать любое значение; другие могут предоставлять только кратные singleStep() или pageStep().
QAbstractSlider излучает набор сигналов:
| Сигнал | Излучается, когда |
|---|---|
| valueChanged() | значение изменилось. tracking определяет, излучается ли этот сигнал во время взаимодействия пользователя. |
| 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
Это свойство содержит максимальное значение ползунка
При установке этого свойства, minimum корректируется при необходимости, чтобы обеспечить сохранение диапазона. Также текущее значение ползунка корректируется, чтобы оно находилось в пределах нового диапазона.
Функции доступа:
| int | maximum() const |
| void | setMaximum(int) |
minimum : int
Это свойство содержит минимальное значение ползунка
При установке этого свойства, maximum корректируется при необходимости, чтобы обеспечить сохранение диапазона. Также текущее значение ползунка корректируется, чтобы оно находилось в пределах нового диапазона.
Функции доступа:
| 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
Это свойство определяет, нажат ли ползунок.
Подклассы устанавливают это свойство, чтобы сообщить абстрактному ползунку, имеет ли tracking какой-либо эффект.
Изменение свойства slider down вызывает сигналы sliderPressed() и sliderReleased()
Функции доступа:
| bool | isSliderDown() const |
| void | setSliderDown(bool) |
sliderPosition : int
Это свойство содержит текущую позицию ползунка
Если tracking включено (значение по умолчанию), это свойство идентично 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.
minimum по умолчанию равен 0, maximum равен 99, singleStep равен 1, pageStep равен 10, и начальное значение value равно 0.
[virtual] QAbstractSlider::~QAbstractSlider()
Уничтожает ползунок.
[signal] void QAbstractSlider::actionTriggered(int action)
Этот сигнал генерируется, когда срабатывает действие ползунка action. Действия — SliderSingleStepAdd, SliderSingleStepSub, SliderPageStepAdd, SliderPageStepSub, SliderToMinimum, SliderToMaximum и SliderMove.
При выводе сигнала, значение sliderPosition было скорректировано в соответствии с действием, но значение value ещё не было распространено (то есть сигнал valueChanged() ещё не был выведен), а визуальное отображение ещё не было обновлено. В слотах, подключенных к этому сигналу, вы можете безопасно скорректировать любое действие, вызвав setSliderPosition() самостоятельно, основываясь как на действии, так и на значении ползунка.
См. также triggerAction().
[override virtual protected] void QAbstractSlider::changeEvent(QEvent *ev)
Переопределено из QWidget::changeEvent().
[override virtual protected] bool QAbstractSlider::event(QEvent *e)
Переопределено из QWidget::event().
[override virtual protected] void QAbstractSlider::keyPressEvent(QKeyEvent *ev)
Переопределено из QWidget::keyPressEvent().
[signal] void QAbstractSlider::rangeChanged(int min, int max)
Этот сигнал излучается, когда диапазон ползунка изменился, при этом min — это новое минимальное значение, а max — новое максимальное значение.
[protected] QAbstractSlider::SliderAction QAbstractSlider::repeatAction() const
Возвращает текущее повторяющееся действие.
См. также setRepeatAction().
[slot] void QAbstractSlider::setRange(int min, int max)
Устанавливает минимальное значение ползунка в min, а максимальное — в max.
Если max меньше min, min становится единственным допустимым значением.
[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.
[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.
[override virtual protected] void QAbstractSlider::timerEvent(QTimerEvent *e)
Переопределено из QObject::timerEvent().
void QAbstractSlider::triggerAction(QAbstractSlider::SliderAction action)
Вызывает действие ползунка action. Возможные действия: SliderSingleStepAdd, SliderSingleStepSub, SliderPageStepAdd, SliderPageStepSub, SliderToMinimum, SliderToMaximum и SliderMove.
См. также actionTriggered().
[signal] void QAbstractSlider::valueChanged(int value)
Этот сигнал излучается, когда значение ползунка изменилось, при этом новое значение ползунка value передаётся как аргумент.
Примечание: Сигнал-уведомление для свойства value.
[override virtual protected] void QAbstractSlider::wheelEvent(QWheelEvent *e)
Переопределено из QWidget::wheelEvent().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.12/qabstractslider.html