QLCDNumber Class

Das QLCDNumber-Widget zeigt eine Zahl mit LCD-ähnlichen Ziffern an. Mehr...

Kopfzeile: #include <QLCDNumber>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
Vererbungen: QFrame

Öffentliche Typen

enum Mode { Hex, Dec, Oct, Bin }
enum SegmentStyle { Outline, Filled, Flat }

Eigenschaften

Öffentliche Funktionen

QLCDNumber(QWidget *parent = nullptr)
QLCDNumber(uint numDigits, 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

Reimplementierte öffentliche Funktionen

virtual QSize sizeHint() const override

Öffentliche Slots

void display(const QString &s)
void display(double num)
void display(int num)
void setBinMode()
void setDecMode()
void setHexMode()
void setOctMode()
void setSmallDecimalPoint(bool)

Signale

void overflow()

Reimplementierte geschützte Funktionen

virtual bool event(QEvent *e) override
virtual void paintEvent(QPaintEvent *) override

Ausführliche Beschreibung

Sie kann eine Zahl in fast jeder Größe anzeigen. Sie kann dezimale, hexadezimale, oktale oder binäre Zahlen anzeigen. Es ist einfach, eine Verbindung zu Datenquellen herzustellen, indem man den display()-Slot benutzt, der überladen ist, um jeden der fünf Argumenttypen anzunehmen.

Es gibt auch Slots zum Ändern der Basis mit setMode() und des Dezimalpunkts mit setSmallDecimalPoint().

QLCDNumber gibt das Signal overflow() aus, wenn es aufgefordert wird, etwas außerhalb seines Bereichs anzuzeigen. Der Bereich wird durch setDigitCount() festgelegt, aber auch setSmallDecimalPoint() beeinflusst ihn. Wenn die Anzeige auf hexadezimal, oktal oder binär eingestellt ist, wird das ganzzahlige Äquivalent des Wertes angezeigt.

Diese Ziffern und andere Symbole können angezeigt werden: 0/O, 1, 2, 3, 4, 5/S, 6, 7, 8, 9/g, Minus, Dezimalpunkt, A, B, C, D, E, F, h, H, L, o, P, r, u, U, Y, Doppelpunkt, Gradzeichen (das in der Zeichenkette als einfaches Anführungszeichen angegeben wird) und Leerzeichen. QLCDNumber ersetzt unzulässige Zeichen durch Leerzeichen.

Es ist nicht möglich, den Inhalt eines QLCDNumber-Objekts abzurufen, obwohl Sie den numerischen Wert mit value() abrufen können. Wenn Sie den Text wirklich benötigen, empfehlen wir Ihnen, die Signale, die den display()-Slot speisen, auch mit einem anderen Slot zu verbinden und den Wert dort zu speichern.

Übrigens ist QLCDNumber der älteste Teil von Qt, der seine Wurzeln in einem BASIC-Programm auf dem Sinclair Spectrum hat.

Siehe auch QLabel und QFrame.

Dokumentation der Mitgliedstypen

enum QLCDNumber::Mode

Dieser Typ bestimmt, wie Zahlen angezeigt werden.

KonstanteWertBeschreibung
QLCDNumber::Hex0Hexadezimal
QLCDNumber::Dec1Dezimal
QLCDNumber::Oct2Oktal
QLCDNumber::Bin3Binär

Wenn die Anzeige auf hexadezimal, oktal oder binär eingestellt ist, wird das ganzzahlige Äquivalent des Wertes angezeigt.

enum QLCDNumber::SegmentStyle

Dieser Typ bestimmt das visuelle Erscheinungsbild des Widgets QLCDNumber.

KonstanteWertBeschreibung
QLCDNumber::Outline0ergibt erhabene Segmente, die mit der Hintergrundfarbe gefüllt sind.
QLCDNumber::Filled1ergibt erhabene Segmente, die mit der windowText-Farbe gefüllt sind.
QLCDNumber::Flat2ergibt flache Segmente, die mit der windowText-Farbe gefüllt sind.

Dokumentation der Eigenschaft

digitCount : int

Diese Eigenschaft enthält die aktuelle Anzahl der angezeigten Ziffern

Entspricht der aktuellen Anzahl der Ziffern. Wenn QLCDNumber::smallDecimalPoint falsch ist, nimmt der Dezimalpunkt eine Ziffernposition ein.

Standardmäßig enthält diese Eigenschaft einen Wert von 5.

Zugriffsfunktionen:

int digitCount() const
void setDigitCount(int numDigits)

Siehe auch smallDecimalPoint.

intValue : int

Diese Eigenschaft enthält den angezeigten Wert, gerundet auf die nächste Ganzzahl

Diese Eigenschaft entspricht der nächstgelegenen Ganzzahl zum aktuellen Wert, der von LCDNumber angezeigt wird. Dies ist der Wert, der für die Modi Hexadezimal, Oktal und Binär verwendet wird.

Wenn der angezeigte Wert keine Zahl ist, hat die Eigenschaft den Wert 0.

Standardmäßig enthält diese Eigenschaft einen Wert von 0.

Zugriffsfunktionen:

int intValue() const
void display(const QString &s)
void display(int num)
void display(double num)

mode : Mode

Diese Eigenschaft enthält den aktuellen Anzeigemodus (Zahlenbasis)

Entspricht dem aktuellen Anzeigemodus, der einer der folgenden ist: Bin, Oct, Dec (die Voreinstellung) und Hex. Im Modus Dec können Fließkommazahlen angezeigt werden, in den anderen Modi wird das ganzzahlige Äquivalent angezeigt.

Zugriffsfunktionen:

QLCDNumber::Mode mode() const
void setMode(QLCDNumber::Mode)

Siehe auch smallDecimalPoint(), setHexMode(), setDecMode(), setOctMode(), und setBinMode().

segmentStyle : SegmentStyle

Diese Eigenschaft enthält den Stil der LCDNumber.

StilErgebnis
OutlineErzeugt erhabene Segmente, die mit der Hintergrundfarbe
Filled (dies ist die Standardeinstellung).Erzeugt erhabene Segmente, die mit der Vordergrundfarbe gefüllt sind.
FlatErzeugt flache Segmente, die mit der Vordergrundfarbe gefüllt sind.

Outline und Filled verwenden zusätzlich QPalette::light() und QPalette::dark() für Schatteneffekte.

Zugriffsfunktionen:

QLCDNumber::SegmentStyle segmentStyle() const
void setSegmentStyle(QLCDNumber::SegmentStyle)

smallDecimalPoint : bool

Diese Eigenschaft bestimmt den Stil des Dezimalpunkts

Bei true wird der Dezimalpunkt zwischen zwei Ziffernpositionen gezeichnet. Andernfalls nimmt es eine eigene Ziffernposition ein, d. h. es wird an einer Ziffernposition gezeichnet. Die Voreinstellung ist false.

Der Abstand zwischen den Ziffern wird etwas vergrößert, wenn der Dezimalpunkt zwischen den Ziffern gezeichnet wird.

Zugriffsfunktionen:

bool smallDecimalPoint() const
void setSmallDecimalPoint(bool)

Siehe auch mode.

value : double

Diese Eigenschaft enthält den angezeigten Wert

Diese Eigenschaft entspricht dem aktuellen Wert, der von LCDNumber angezeigt wird.

Wenn der angezeigte Wert keine Zahl ist, hat die Eigenschaft den Wert 0.

Standardmäßig enthält diese Eigenschaft einen Wert von 0.

Zugriffsfunktionen:

double value() const
void display(const QString &s)
void display(int num)
void display(double num)

Dokumentation der Mitgliedsfunktionen

[explicit] QLCDNumber::QLCDNumber(QWidget *parent = nullptr)

Konstruiert eine LCD-Zahl, setzt die Anzahl der Ziffern auf 5, die Basis auf dezimal, den Dezimalpunktmodus auf "klein" und den Rahmenstil auf einen erhöhten Kasten. Das Argument segmentStyle() wird auf Outline gesetzt.

Das Argument parent wird an den Konstruktor QFrame übergeben.

Siehe auch setDigitCount() und setSmallDecimalPoint().

[explicit] QLCDNumber::QLCDNumber(uint numDigits, QWidget *parent = nullptr)

Konstruiert eine LCD-Zahl, setzt die Anzahl der Ziffern auf numDigits, die Basis auf dezimal, den Dezimalpunktmodus auf 'klein' und den Rahmenstil auf einen erhöhten Kasten. Die segmentStyle() wird auf Filled gesetzt.

Das Argument parent wird an den Konstruktor QFrame übergeben.

Siehe auch setDigitCount() und setSmallDecimalPoint().

[virtual noexcept] QLCDNumber::~QLCDNumber()

Zerstört die LCD-Nummer.

bool QLCDNumber::checkOverflow(double num) const

Gibt true zurück, wenn num zu groß ist, um vollständig angezeigt zu werden; andernfalls wird false zurückgegeben.

Siehe auch display(), digitCount(), und smallDecimalPoint().

bool QLCDNumber::checkOverflow(int num) const

Dies ist eine überladene Funktion.

Gibt true zurück, wenn num zu groß ist, um vollständig angezeigt zu werden; andernfalls gibt sie false zurück.

Siehe auch display(), digitCount(), und smallDecimalPoint().

int QLCDNumber::digitCount() const

Gibt die aktuelle Anzahl der Ziffern zurück.

Hinweis: Getter-Funktion für die Eigenschaft digitCount.

Siehe auch setDigitCount().

[slot] void QLCDNumber::display(const QString &s)

Zeigt die Zahl an, die durch die Zeichenkette s dargestellt wird.

Bei dieser Version der Funktion werden mode() und smallDecimalPoint() nicht berücksichtigt.

Diese Ziffern und andere Symbole können angezeigt werden: 0/O, 1, 2, 3, 4, 5/S, 6, 7, 8, 9/g, Minus, Dezimalpunkt, A, B, C, D, E, F, h, H, L, o, P, r, u, U, Y, Doppelpunkt, Gradzeichen (das in der Zeichenkette als einfaches Anführungszeichen angegeben ist) und Leerzeichen. QLCDNumber ersetzt Leerzeichen für unzulässige Zeichen.

Hinweis: Setter-Funktion für die Eigenschaft intValue. Setter-Funktion für die Eigenschaft value.

[slot] void QLCDNumber::display(double num)

Dies ist eine überladene Funktion.

Zeigt die Zahl num an.

Hinweis: Setter-Funktion für die Eigenschaft intValue. Setzerfunktion für die Eigenschaft value.

[slot] void QLCDNumber::display(int num)

Dies ist eine überladene Funktion.

Zeigt die Zahl num an.

Hinweis: Setter-Funktion für die Eigenschaft intValue. Setzerfunktion für die Eigenschaft value.

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

Reimplements: QFrame::event(QEvent *e).

[signal] void QLCDNumber::overflow()

Dieses Signal wird ausgegeben, wenn QLCDNumber aufgefordert wird, eine zu große Zahl oder eine zu lange Zeichenkette anzuzeigen.

Es wird nie von setDigitCount() ausgegeben.

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

Reimplements: QFrame::paintEvent(QPaintEvent *).

[slot] void QLCDNumber::setBinMode()

Ruft setMode(Bin) auf. Wird aus Gründen der Bequemlichkeit bereitgestellt (z. B. um Schaltflächen damit zu verbinden).

Siehe auch setMode(), setHexMode(), setDecMode(), setOctMode(), und mode().

[slot] void QLCDNumber::setDecMode()

Ruft setMode(Dec) auf. Wird der Einfachheit halber bereitgestellt (z. B. um Schaltflächen damit zu verbinden).

Siehe auch setMode(), setHexMode(), setOctMode(), setBinMode(), und mode().

void QLCDNumber::setDigitCount(int numDigits)

Setzt die aktuelle Anzahl der Ziffern auf numDigits. Muss im Bereich 0..99 liegen.

Hinweis: Setter-Funktion für die Eigenschaft digitCount.

Siehe auch digitCount().

[slot] void QLCDNumber::setHexMode()

Ruft setMode(Hex) auf. Wird aus Gründen der Bequemlichkeit bereitgestellt (z. B. um Schaltflächen damit zu verbinden).

Siehe auch setMode(), setDecMode(), setOctMode(), setBinMode(), und mode().

[slot] void QLCDNumber::setOctMode()

Ruft setMode(Oct) auf. Wird der Einfachheit halber bereitgestellt (z. B. um Schaltflächen damit zu verbinden).

Siehe auch setMode(), setHexMode(), setDecMode(), setBinMode(), und mode().

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

Reimplements: QFrame::sizeHint() const.

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.