Класс QLCDNumber
Виджет QLCDNumber отображает число с цифрами в стиле ЖК-дисплея. Подробнее...
| Заголовок: | #include <QLCDNumber> |
| CMake: | find_package(Qt6 COMPONENTS Widgets REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| Наследуется от: | QFrame |
Типы public
| перечисление | Mode { Hex, Dec, Oct, Bin } |
| перечисление | SegmentStyle { Outline, Filled, Flat } |
Свойства
|
|
Public Функции
| QLCDNumber(uint numDigits, QWidget *parent = nullptr) | |
| QLCDNumber(QWidget *parent = nullptr) | |
| virtual | ~QLCDNumber() |
| bool | checkOverflow(double num) const |
| bool | checkOverflow(int num) const |
| int | digitCount() const |
| int | intValue() const |
| QLCDNumber::Mode | mode() const |
| QLCDNumber::SegmentStyle | segmentStyle() const |
| void | setDigitCount(int numDigits) |
| void | setMode(QLCDNumber::Mode) |
| void | setSegmentStyle(QLCDNumber::SegmentStyle) |
| bool | smallDecimalPoint() const |
| double | value() const |
Переопределённые public функции
| virtual QSize | sizeHint() const override |
Public слоты
| void | display(double num) |
| void | display(int num) |
| void | display(const QString &s) |
| void | setBinMode() |
| void | setDecMode() |
| void | setHexMode() |
| void | setOctMode() |
| void | setSmallDecimalPoint(bool) |
Сигналы
| void | overflow() |
Переопределённые protected функции
| virtual bool | event(QEvent *e) override |
| virtual void | paintEvent(QPaintEvent *) override |
Подробное описание
Он может отображать числа практически любого размера. Он может отображать десятичные, шестнадцатеричные, восьмеричные или двоичные числа. Его легко подключить к источникам данных, используя слот display(), который перегружен для работы с пятью типами аргументов.
Также есть слоты для изменения основания с помощью setMode() и десятичной точки с помощью setSmallDecimalPoint().
QLCDNumber излучает сигнал overflow(), когда его просят отобразить значение, выходящее за пределы его диапазона. Диапазон задаётся с помощью setDigitCount(), но на него также влияет setSmallDecimalPoint(). Если отображение настроено на шестнадцатеричную, восьмеричную или двоичную систему, отображается целое значение, эквивалентное значению.
Эти цифры и другие символы могут быть показаны: 0/O, 1, 2, 3, 4, 5/S, 6, 7, 8, 9/g, минус, десятичная точка, A, B, C, D, E, F, h, H, L, o, P, r, u, U, Y, двоеточие, знак градуса (который указан как одиночная кавычка в строке) и пробел. QLCDNumber заменяет пробелами недопустимые символы.
Получить содержимое объекта QLCDNumber невозможно, хотя вы можете получить числовое значение с помощью value(). Если вам действительно нужен текст, рекомендуем подключить сигналы, которые подают в слот display(), и к другому слоту для хранения значения.
Кстати, QLCDNumber — очень старая часть Qt, уходящая корнями к программе на BASIC на Sinclair Spectrum.
См. также QLabel, QFrame, Пример цифровых часов и Пример Tetrix.
Документация типов членов
перечисление QLCDNumber::Mode
Этот тип определяет, как отображаются числа.
| Постоянная | Значение | Описание |
|---|---|---|
QLCDNumber::Hex |
0 |
Шестнадцатеричный |
QLCDNumber::Dec |
1 |
Десятичный |
QLCDNumber::Oct |
2 |
Восьмеричный |
QLCDNumber::Bin |
3 |
Двоичный |
Если отображение настроено на шестнадцатеричную, восьмеричную или двоичную систему, отображается целое значение, эквивалентное значению.
перечисление QLCDNumber::SegmentStyle
Этот тип определяет визуальное отображение виджета QLCDNumber.
| Постоянная | Значение | Описание |
|---|---|---|
QLCDNumber::Outline |
0 |
выдает поднятые сегменты, заполненные цветом фона. |
QLCDNumber::Filled |
1 |
выдает поднятые сегменты, заполненные цветом windowText. |
QLCDNumber::Flat |
2 |
выдает плоские сегменты, заполненные цветом windowText. |
Документация свойств
digitCount : int
Это свойство содержит текущее количество отображаемых цифр
Соответствует текущему количеству цифр. Если QLCDNumber::smallDecimalPoint ложно, десятичная точка занимает одну позицию цифры.
По умолчанию это свойство содержит значение 5.
Функции доступа:
| int | digitCount() const |
| void | setDigitCount(int numDigits) |
См. также smallDecimalPoint.
intValue : int
Это свойство содержит отображаемое значение, округленное до ближайшего целого
Это свойство соответствует ближайшему целому числу отображаемому текущему значению LCDNumber. Это значение используется для шестнадцатеричных, восьмеричных и двоичных режимов.
Если отображаемое значение не является числом, свойство имеет значение 0.
По умолчанию это свойство содержит значение 0.
Функции доступа:
| int | intValue() const |
| void | display(const QString &s) |
| void | display(int num) |
| void | display(double num) |
mode : Mode
Это свойство содержит текущий режим отображения (система счисления)
Соответствует текущему режиму отображения, который является одним из Bin, Oct, Dec (по умолчанию) и Hex. Режим Dec может отображать значения с плавающей запятой, другие режимы отображают целую часть.
Функции доступа:
| QLCDNumber::Mode | mode() const |
| void | setMode(QLCDNumber::Mode) |
См. также smallDecimalPoint(), setHexMode(), setDecMode(), setOctMode() и setBinMode().
segmentStyle : SegmentStyle
Это свойство содержит стиль LCDNumber
| Стиль | Результат |
|---|---|
Outline |
Создает поднятые сегменты, заполненные цветом фона |
Filled (по умолчанию). |
Создает поднятые сегменты, заполненные цветом переднего плана. |
Flat |
Создает плоские сегменты, заполненные цветом переднего плана. |
Outline и Filled дополнительно будут использовать QPalette::light() и QPalette::dark() для эффектов теней.
Функции доступа:
| QLCDNumber::SegmentStyle | segmentStyle() const |
| void | setSegmentStyle(QLCDNumber::SegmentStyle) |
smallDecimalPoint : bool
Это свойство содержит стиль десятичной точки
Если истинно, десятичная точка рисуется между двумя позициями цифр. В противном случае она занимает свою собственную позицию цифры, то есть рисуется в позиции цифры. По умолчанию ложно.
Между цифрами межцифровой пробел увеличивается, когда десятичная точка нарисована между цифрами.
Функции доступа:
| bool | smallDecimalPoint() const |
| void | setSmallDecimalPoint(bool) |
См. также mode.
value : double
Это свойство содержит отображаемое значение
Это свойство соответствует текущему значению, отображаемому LCDNumber.
Если отображаемое значение не является числом, свойство имеет значение 0.
По умолчанию это свойство содержит значение 0.
Функции доступа:
| double | value() const |
| void | display(const QString &s) |
| void | display(int num) |
| void | display(double num) |
Документация функций-членов
QLCDNumber::QLCDNumber(uint numDigits, QWidget *parent = nullptr)
Создает число LCD, устанавливает количество цифр в numDigits, систему счисления в десятичную, режим десятичной точки в 'маленькую' и стиль рамки в поднятую рамку. segmentStyle() устанавливается в Filled.
Аргумент parent передается конструктору QFrame.
См. также setDigitCount() и setSmallDecimalPoint().
QLCDNumber::QLCDNumber(QWidget *parent = nullptr)
Создает число LCD, устанавливает количество цифр в 5, систему счисления в десятичную, режим десятичной точки в 'маленькую' и стиль рамки в поднятую рамку. segmentStyle() устанавливается в Outline.
Аргумент parent передается конструктору QFrame.
См. также setDigitCount() и setSmallDecimalPoint().
[slot] void QLCDNumber::display(double num)
Это перегруженная функция.
Отображает число num.
Примечание: Функция-установщик для свойства intValue. Функция-установщик для свойства value.
[slot] void QLCDNumber::display(int num)
Это перегруженная функция.
Отображает число num.
Примечание: Функция-установщик для свойства intValue. Функция-установщик для свойства value.
[slot] void QLCDNumber::display(const QString &s)
Отображает число, представленное строкой s.
Этот вариант функции игнорирует mode() и smallDecimalPoint().
Эти цифры и другие символы могут быть показаны: 0/O, 1, 2, 3, 4, 5/S, 6, 7, 8, 9/g, минус, десятичная точка, A, B, C, D, E, F, h, H, L, o, P, r, u, U, Y, двоеточие, знак градуса (который указан как одинарная кавычка в строке) и пробел. QLCDNumber заменяет пробелами некорректные символы.
Примечание: Функция-установщик для свойства intValue. Функция-установщик для свойства value.
[signal] void QLCDNumber::overflow()
Этот сигнал излучается всякий раз, когда QLCDNumber просят отобразить слишком большое число или слишком длинную строку.
Он никогда не излучается setDigitCount().
[slot] void QLCDNumber::setBinMode()
Вызывает setMode(Bin). Предоставлено для удобства (например, для подключения кнопок к нему).
См. также setMode(), setHexMode(), setDecMode(), setOctMode() и mode().
[slot] void QLCDNumber::setDecMode()
Вызывает setMode(Dec). Предоставлено для удобства (например, для подключения кнопок к нему).
См. также setMode(), setHexMode(), setOctMode(), setBinMode() и mode().
[slot] void QLCDNumber::setHexMode()
Вызывает setMode(Hex). Предоставлено для удобства (например, для подключения кнопок).
См. также setMode(), setDecMode(), setOctMode(), setBinMode() и mode().
[slot] void QLCDNumber::setOctMode()
Вызывает setMode(Oct). Предоставлено для удобства (например, для подключения кнопок).
См. также setMode(), setHexMode(), setDecMode(), setBinMode() и mode().
[virtual] QLCDNumber::~QLCDNumber()
Удаляет объект LCD-дисплея.
bool QLCDNumber::checkOverflow(double num) const
Возвращает true если num слишком большой, чтобы отобразить его полностью; в противном случае возвращает false.
См. также display(), digitCount() и smallDecimalPoint().
bool QLCDNumber::checkOverflow(int num) const
Это перегруженный метод.
Возвращает true если num слишком большой, чтобы отобразить его полностью; в противном случае возвращает false.
См. также display(), digitCount() и smallDecimalPoint().
int QLCDNumber::digitCount() const
Возвращает текущее количество цифр.
Примечание: Функция-получатель для свойства digitCount.
См. также setDigitCount().
[override virtual protected] bool QLCDNumber::event(QEvent *e)
Переопределяет: QFrame::event(QEvent *e).
[override virtual protected] void QLCDNumber::paintEvent(QPaintEvent *)
Переопределяет: QFrame::paintEvent(QPaintEvent *).
void QLCDNumber::setDigitCount(int numDigits)
Устанавливает текущее количество цифр в numDigits. Должно быть в диапазоне 0..99.
Примечание: Функция-установщик для свойства digitCount.
См. также digitCount().
[override virtual] QSize QLCDNumber::sizeHint() const
Переопределяет: QFrame::sizeHint() const.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qlcdnumber.html