Spec-Zone.ru › Qt 5.12

Класс 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 = nullptr)
virtual ~QDial()
int notchSize() const
qreal notchTarget() const
bool notchesVisible() const
void setNotchTarget(double target)
bool wrapping() const

Переопределенные открытые функции

virtual QSize minimumSizeHint() const override
virtual QSize sizeHint() const override
  • 21 открытая функция унаследована от QAbstractSlider
  • 214 открытых функций унаследовано от QWidget
  • 31 открытая функция унаследована от QObject
  • 14 открытых функций унаследовано от QPaintDevice

Открытые слоты

void setNotchesVisible(bool visible)
void setWrapping(bool on)
  • 3 открытых слота унаследовано от QAbstractSlider
  • 19 открытых слотов унаследовано от QWidget
  • 1 открытый слот унаследовано от QObject

Статические открытые члены

const QMetaObject staticMetaObject
  • 5 статических открытых членов унаследовано от QWidget
  • 9 статических открытых членов унаследовано от QObject

Защищенные функции

void initStyleOption(QStyleOptionSlider *option) const

Переопределенные защищенные функции

virtual bool event(QEvent *e) override
virtual void mouseMoveEvent(QMouseEvent *e) override
virtual void mousePressEvent(QMouseEvent *e) override
virtual void mouseReleaseEvent(QMouseEvent *e) override
virtual void paintEvent(QPaintEvent *pe) override
virtual void resizeEvent(QResizeEvent *e) override
virtual void sliderChange(QAbstractSlider::SliderChange change) override
  • 8 защищенных функций унаследовано от QAbstractSlider
  • 35 защищенных функций унаследовано от QWidget
  • 9 защищенных функций унаследовано от QObject
  • 1 защищенная функция унаследована от QPaintDevice

Дополнительные унаследованные члены

  • 6 сигналов унаследовано от QAbstractSlider
  • 3 сигнала унаследовано от QWidget
  • 2 сигнала унаследовано от QObject
  • 1 защищенный слот унаследовано от QWidget

Подробное описание

Класс QDial предоставляет средство управления диапазоном с округлой шкалой (например, спидометр или потенциометр).

QDial используется, когда пользователь должен контролировать значение в пределах заданного программой диапазона, а диапазон либо циклический (например, углы, измеряемые от 0 до 359 градусов), либо макет диалога требует прямоугольного виджета.

Поскольку QDial наследуется от QAbstractSlider, поведение циферблата аналогично поведению ползунка. Когда wrapping() равно false (по умолчанию), нет реальной разницы между ползунком и циферблатом. Они оба используют одни и те же сигналы, слоты и члены. Какой из них использовать, зависит от ожиданий пользователей и типа приложения.

Циферблат изначально непрерывно излучает сигналы valueChanged() во время перемещения ползунка; можно сделать так, чтобы он излучал сигнал реже, отключив свойство tracking. Сигнал sliderMoved() излучается непрерывно, даже когда отслеживание отключено.

Циферблат также излучает сигналы sliderPressed() и sliderReleased() при нажатии и отпускании кнопки мыши. Обратите внимание, что значение циферблата может измениться без излучения этих сигналов, так как значение также можно изменить с помощью клавиатуры и колесика мыши.

В отличие от ползунка, QDial пытается нарисовать «привлекательное» количество рисок, а не одну на каждый шаг. Если возможно, рисуется по одной риске на каждый шаг, но если пикселей недостаточно для рисования каждой риски, QDial будет пропускать риски, чтобы попытаться нарисовать равномерный набор (например, рисуя каждую вторую или третью риску).

Как и ползунок, циферблат делает доступной функцию setValue() QAbstractSlider в виде слота.

Интерфейс циферблата с клавиатурой довольно прост: клавиши со стрелками влево/вверх и вправо/вниз изменяют значение циферблата на определенный шаг singleStep, клавиши страницы вверх/вниз — на определенный шаг 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

Это свойство указывает, включена ли функция перехвата.

Если true, перехват включён; в противном случае внизу циферблата вставляется некоторый пробел для разделения концов диапазона допустимых значений.

При включении перехвата стрелка может быть ориентирована под любым углом на циферблате. При отключении стрелка будет ограничена верхней частью циферблата; если она повернётся в пространство внизу циферблата, она будет привязана к ближайшему концу допустимого диапазона значений.

По умолчанию это свойство равно false.

Функции доступа:

bool wrapping() const
void setWrapping(bool on)

Документация функций-членов

QDial::QDial(QWidget *parent = nullptr)

Конструирует циферблат.

Аргумент parent передаётся конструктору QAbstractSlider.

[virtual] QDial::~QDial()

Удаляет циферблат.

[override virtual protected] bool QDial::event(QEvent *e)

Переопределено из QAbstractSlider::event().

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

Инициализирует option значениями из этого QDial. Этот метод полезен для подклассов, когда им нужен QStyleOptionSlider, но они не хотят заполнять всю информацию сами.

См. также QStyleOption::initFrom().

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

Переопределено из QWidget::minimumSizeHint().

[override virtual protected] void QDial::mouseMoveEvent(QMouseEvent *e)

Переопределено из QWidget::mouseMoveEvent().

[override virtual protected] void QDial::mousePressEvent(QMouseEvent *e)

Переопределено из QWidget::mousePressEvent().

[override virtual protected] void QDial::mouseReleaseEvent(QMouseEvent *e)

Переопределено из QWidget::mouseReleaseEvent().

[override virtual protected] void QDial::paintEvent(QPaintEvent *pe)

Переопределено из QWidget::paintEvent().

[override virtual protected] void QDial::resizeEvent(QResizeEvent *e)

Переопределено из QWidget::resizeEvent().

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

Переопределено из QWidget::sizeHint().

[override virtual protected] void QDial::sliderChange(QAbstractSlider::SliderChange change)

Переопределено из QAbstractSlider::sliderChange().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.12/qdial.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API