Класс QDial
Класс QDial предоставляет элемент управления диапазоном с закругленной шкалой (например, спидометр или потенциометр). Подробнее...
| Заголовок: | #include <QDial> |
| qmake: | QT += widgets |
| Наследуется от: | QAbstractSlider |
Свойства
- notchSize : const int
- notchTarget : qreal
- notchesVisible : bool
- wrapping : bool
- 11 свойств унаследовано от QAbstractSlider
- 59 свойств унаследовано от QWidget
- 1 свойство унаследовано от QObject
Открытые функции
| QDial(QWidget *parent = Q_NULLPTR) | |
| ~QDial() | |
| int | notchSize() const |
| qreal | notchTarget() const |
| bool | notchesVisible() const |
| void | setNotchTarget(double target) |
| bool | wrapping() const |
Переопределённые открытые функции
| virtual QSize | minimumSizeHint() const |
| virtual QSize | sizeHint() const |
- 21 открытая функция унаследована от QAbstractSlider
- 214 открытых функций унаследовано от QWidget
- 32 открытых функций унаследовано от QObject
- 14 открытых функций унаследовано от QPaintDevice
Открытые слоты
| void | setNotchesVisible(bool visible) |
| void | setWrapping(bool on) |
- 3 открытых слота унаследовано от QAbstractSlider
- 19 открытых слотов унаследовано от QWidget
- 1 открытый слот унаследовано от QObject
Защищённые функции
| void | initStyleOption(QStyleOptionSlider *option) const |
Переопределённые защищённые функции
| virtual bool | event(QEvent *e) |
| virtual void | mouseMoveEvent(QMouseEvent *e) |
| virtual void | mousePressEvent(QMouseEvent *e) |
| virtual void | mouseReleaseEvent(QMouseEvent *e) |
| virtual void | paintEvent(QPaintEvent *pe) |
| virtual void | resizeEvent(QResizeEvent *e) |
| virtual void | sliderChange(SliderChange change) |
- 8 защищённых функций унаследовано от QAbstractSlider
- 35 защищённых функций унаследовано от QWidget
- 9 защищённых функций унаследовано от QObject
- 1 защищённая функция унаследована от QPaintDevice
Дополнительные унаследованные члены
- 6 сигналов унаследовано от QAbstractSlider
- 3 сигнала унаследовано от QWidget
- 2 сигнала унаследовано от QObject
- 5 статических открытых членов унаследовано от QWidget
- 11 статических открытых членов унаследовано от QObject
- 1 защищённый слот унаследовано от QWidget
Подробное описание
Класс QDial предоставляет элемент управления диапазоном с закругленной шкалой (например, спидометр или потенциометр).
QDial используется, когда пользователю нужно управлять значением в заданном программой диапазоне, и диапазон либо циклический (например, углы, измеряемые от 0 до 359 градусов), либо макет диалога требует прямоугольного виджета.
Поскольку QDial наследуется от QAbstractSlider, диалог ведет себя аналогично ползунку slider. Когда wrapping() имеет значение false (значение по умолчанию), между ползунком и диалогом нет реальной разницы. Они оба используют одни и те же сигналы, слоты и члены функций. Какой из них использовать, зависит от ожиданий пользователей и типа приложения.
По умолчанию диалог непрерывно генерирует сигналы valueChanged во время перемещения ползунка. Можно сделать так, чтобы сигналы генерировались реже, отключив свойство tracking. Сигнал sliderMoved генерируется непрерывно, даже если отслеживание отключено.
Диалог также генерирует сигналы sliderPressed и sliderReleased при нажатии и отпускании кнопки мыши. Обратите внимание, что значение диалога может изменяться без генерации этих сигналов, так как для изменения значения также можно использовать клавиатуру и колесо мыши.
В отличие от ползунка, QDial пытается нарисовать «красивое» количество рисок, а не одну на каждом шаге. Если возможно, рисуется по одной риске на каждый шаг, но если пикселей недостаточно для рисования каждой, QDial пропускает риски, чтобы попытаться нарисовать равномерный набор (например, рисуя каждую вторую или третью риску).
Как и ползунок, диалог делает доступным метод setValue() QAbstractSlider в качестве слота.
Интерфейс диалога с клавиатурой довольно прост: клавиши влево/вверх и вправо/вниз изменяют значение диалога на заданный шаг singleStep, Page Up и Page Down — на заданный шаг pageStep, а клавиши Home и End устанавливают значение соответственно на минимальное minimum и максимальное maximum значения.
Если вы используете колесо мыши для изменения значения диалога, значение приращения определяется меньшим из значений wheelScrollLines, умноженного на singleStep, и pageStep.
См. также QScrollBar, QSpinBox, QSlider, Руководство по проектированию пользовательского интерфейса: Ползунки и Пример ползунков.
Документация свойств
notchSize : const int
Это свойство хранит текущий размер выемки.
Размер выемки указан в единицах управления диапазоном, а не в пикселях, и, по возможности, является кратным значению singleStep(), что приводит к размеру выемки на экране, близкому к notchTarget().
По умолчанию это свойство имеет значение 1.
Функции доступа:
| int | notchSize() const |
См. также notchTarget() и singleStep().
notchTarget : qreal
Это свойство хранит целевое число пикселей между выемками.
Целевое значение выемки — это количество пикселей, которое QDial пытается поместить между каждой выемкой.
Фактический размер может отличаться от целевого размера.
Целевое значение выемки по умолчанию составляет 3,7 пикселя.
Функции доступа:
| qreal | notchTarget() const |
| void | setNotchTarget(double target) |
notchesVisible : bool
Это свойство указывает, отображаются ли выемки.
Если свойство равно true, вокруг циферблата рисуется ряд выемок, чтобы указать диапазон доступных значений; в противном случае выемки не отображаются.
По умолчанию это свойство отключено.
Функции доступа:
| bool | notchesVisible() const |
| void | setNotchesVisible(bool visible) |
wrapping : bool
Это свойство указывает, включена ли функция обёртки.
Если значение истинно, функция обёртки включена; в противном случае внизу циферблата вставляется некоторый пробел для разделения концов диапазона допустимых значений.
При включенной функции обёртки стрелка может быть ориентирована под любым углом на циферблате. При отключенной функции обёртки стрелка будет ограничена верхней частью циферблата; если она повернётся в область снизу циферблата, она будет ограничена ближайшим концом допустимого диапазона значений.
По умолчанию это свойство равно false.
Функции доступа:
| bool | wrapping() const |
| void | setWrapping(bool on) |
Документация по функциям-членам
QDial::QDial(QWidget *parent = Q_NULLPTR)
Конструирует циферблат.
Аргумент parent передаётся конструктору QAbstractSlider.
QDial::~QDial()
Уничтожает циферблат.
[virtual protected] bool QDial::event(QEvent *e)
Переопределено из QObject::event().
[protected] void QDial::initStyleOption(QStyleOptionSlider *option) const
Инициализирует option значениями из этого QDial. Этот метод полезен для подклассов, когда им нужен QStyleOptionSlider, но они не хотят заполнять всю информацию сами.
См. также QStyleOption::initFrom().
[virtual] QSize QDial::minimumSizeHint() const
Переопределено из QWidget::minimumSizeHint().
[virtual protected] void QDial::mouseMoveEvent(QMouseEvent *e)
Переопределено из QWidget::mouseMoveEvent().
[virtual protected] void QDial::mousePressEvent(QMouseEvent *e)
Переопределено из QWidget::mousePressEvent().
[virtual protected] void QDial::mouseReleaseEvent(QMouseEvent *e)
Переопределено из QWidget::mouseReleaseEvent().
[virtual protected] void QDial::paintEvent(QPaintEvent *pe)
Переопределено из QWidget::paintEvent().
[virtual protected] void QDial::resizeEvent(QResizeEvent *e)
Переопределено из QWidget::resizeEvent().
[virtual] QSize QDial::sizeHint() const
Переопределено из QWidget::sizeHint().
[virtual protected] void QDial::sliderChange(SliderChange change)
Переопределено из QAbstractSlider::sliderChange().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qdial.html