Auf dieser Seite

QLCDNumber Class

Das Widget „QLCDNumber“ 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
Erbt von: 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

Neu implementierte ö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()

Neu implementierte geschützte Funktionen

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

Ausführliche Beschreibung

„1234“ mit LCD-ähnlicher digitaler Anzeige

Es kann eine Zahl in nahezu jeder Größe anzeigen. Es kann dezimale, hexadezimale, oktale oder binäre Zahlen anzeigen. Die Anbindung an Datenquellen ist mithilfe des Slots „ display()“ einfach, der so überladen ist, dass er fünf verschiedene Argumenttypen akzeptiert.

Es gibt außerdem Slots zum Ändern der Basis mit „ setMode()“ und des Dezimalpunkts mit „ setSmallDecimalPoint()“.

QLCDNumber sendet das Signal „ overflow()“, wenn es aufgefordert wird, etwas außerhalb seines Bereichs anzuzeigen. Der Bereich wird durch „ setDigitCount()“ festgelegt, wird jedoch auch durch „ setSmallDecimalPoint()“ beeinflusst. Ist die Anzeige auf hexadezimal, oktal oder binär eingestellt, wird das ganzzahlige Äquivalent des Wertes angezeigt.

Folgende Ziffern und andere Symbole können angezeigt werden: 0/O, 1, 2, 3, 4, 5/S, 6, 7, 8, 9/g, Minuszeichen, 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, allerdings kannst du den numerischen Wert mit ` value()` abrufen. Wenn du den Text wirklich benötigst, empfehlen wir dir, die Signale, die den Slot ` display()` versorgen, auch mit einem anderen Slot zu verbinden und den Wert dort zu speichern.

Übrigens ist „QLCDNumber“ der älteste Teil von Qt, dessen Wurzeln bis zu einem BASIC-Programm auf dem Sinclair Spectrum zurückreichen.

Siehe auch „ QLabel “ und „ QFrame “.

Dokumentation zu Mitgliedstypen

enum QLCDNumber::Mode

Dieser Typ legt fest, wie Zahlen dargestellt werden.

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

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

enum QLCDNumber::SegmentStyle

Dieser Typ bestimmt das Erscheinungsbild des Widgets „ QLCDNumber “.

KonstanteWertBeschreibung
QLCDNumber::Outline0Erzeugt erhabene Segmente, die mit der Hintergrundfarbe gefüllt sind.
QLCDNumber::Filled1Erzeugt erhabene Segmente, die mit der „windowText“-Farbe gefüllt sind.
QLCDNumber::Flat2Erzeugt flache Segmente, die mit der „windowText“-Farbe gefüllt sind.

Eigenschaftsdokumentation

digitCount : int

Diese Eigenschaft enthält die aktuell angezeigte Anzahl der Ziffern

Entspricht der aktuellen Anzahl der Stellen. Wenn „ QLCDNumber::smallDecimalPoint “ auf „false“ gesetzt ist, nimmt der Dezimalpunkt eine Stellenposition ein.

Standardmäßig enthält diese Eigenschaft den Wert 5.

Zugriffsfunktionen:

int digitCount() const
void setDigitCount(int numDigits)

Siehe auch „ smallDecimalPoint “.

intValue : int

Diese Eigenschaft enthält den auf die nächste ganze Zahl gerundeten Anzeigewert

Diese Eigenschaft entspricht der nächsten ganzen Zahl, die dem aktuell von der LCDNumber angezeigten Wert am nächsten liegt. Dieser Wert wird für den hexadezimalen, oktalen und binären Modus verwendet.

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

Standardmäßig enthält diese Eigenschaft den Wert 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 (Zahlensystem)

Entspricht dem aktuellen Anzeigemodus, der einer der folgenden ist: „ Bin “, „ Oct “, „ Dec “ (Standard) und „ Hex “. Im Modus „ Dec “ können Gleitkommawerte angezeigt werden, in den anderen Modi wird der entsprechende ganzzahlige Wert angezeigt.

Zugriffsfunktionen:

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

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

segmentStyle : SegmentStyle

Diese Eigenschaft legt den Stil des LCDNumber fest.

StilErgebnis
OutlineErzeugt erhabene Segmente, die mit der Hintergrundfarbe gefüllt sind
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 legt den Stil des Dezimalpunkts fest

Ist der Wert „true“, wird die Dezimalstelle zwischen zwei Ziffernpositionen dargestellt. Andernfalls nimmt sie eine eigene Ziffernposition ein, d. h., sie wird an einer Ziffernposition dargestellt. Der Standardwert ist „false“.

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

Zugriffsfunktionen:

bool smallDecimalPoint() const
void setSmallDecimalPoint(bool)

Siehe auch „ mode “.

value : double

Diese Eigenschaft enthält den angezeigten Wert

Diese Eigenschaft entspricht dem aktuell von der LCDNumber angezeigten Wert.

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

Standardmäßig enthält diese Eigenschaft den Wert 0.

Zugriffsfunktionen:

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

Dokumentation zu den Member-Funktionen

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

Erstellt eine LCD-Zahl, legt die Anzahl der Stellen auf 5 fest, die Basis auf dezimal, den Dezimalpunktmodus auf „klein“ und den Rahmenstil auf einen erhabenen Rahmen. Die Funktion „ 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)

Erstellt eine LCD-Zahl, legt die Anzahl der Stellen auf „ numDigits “ fest, die Basis auf dezimal, den Dezimalpunktmodus auf „small“ und den Rahmenstil auf einen erhabenen Rahmen. Die Funktion „ segmentStyle()“ wird auf „ Filled “ gesetzt.

Das Argument ` parent ` wird an den Konstruktor von ` QFrame ` übergeben.

Siehe auch setDigitCount() und setSmallDecimalPoint().

[virtual noexcept] QLCDNumber::~QLCDNumber()

Löscht die Zahl auf dem LCD-Display.

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

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

Dies ist eine überladene Funktion.

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 Zeichenfolge „ s “ dargestellt wird.

Diese Version der Funktion ignoriert die Funktionen ` mode()` und ` smallDecimalPoint()`.

Folgende Ziffern und andere Symbole können angezeigt werden: 0/O, 1, 2, 3, 4, 5/S, 6, 7, 8, 9/g, Minuszeichen, 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.

Hinweis: Setter -Funktion für die Eigenschaften „ intValue “ und „ value “.

Hinweis: Dieser Slot ist überladen. So stellen Sie eine Verbindung zu diesem Slot her:

// Connect using qOverload:
connect(sender, &SenderClass::signal,
        lCDNumber, qOverload(&QLCDNumber::display));

// Or using a lambda as wrapper:
connect(sender, &SenderClass::signal,
        lCDNumber, [receiver = lCDNumber](const QString &s) { receiver->display(s); });
Weitere Beispiele und Vorgehensweisen finden Sie unter „Verbindung zu überladenen Slots herstellen“.

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

Zeigt die Zahl „ num “ an.

Hinweis: Setter -Funktion für die Eigenschaften „ intValue “ und „ value “.

Hinweis: Dieser Slot ist überladen. So stellen Sie eine Verbindung zu diesem Slot her:

// Connect using qOverload:
connect(sender, &SenderClass::signal,
        lCDNumber, qOverload(&QLCDNumber::display));

// Or using a lambda as wrapper:
connect(sender, &SenderClass::signal,
        lCDNumber, [receiver = lCDNumber](double num) { receiver->display(num); });
Weitere Beispiele und Vorgehensweisen finden Sie unter „Verbindung zu überladenen Slots herstellen“.

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

Zeigt die Zahl „ num “ an.

Hinweis: Setter -Funktion für die Eigenschaften „ intValue “ und „ value “.

Hinweis: Dieser Slot ist überladen. So stellen Sie eine Verbindung zu diesem Slot her:

// Connect using qOverload:
connect(sender, &SenderClass::signal,
        lCDNumber, qOverload(&QLCDNumber::display));

// Or using a lambda as wrapper:
connect(sender, &SenderClass::signal,
        lCDNumber, [receiver = lCDNumber](int num) { receiver->display(num); });
Weitere Beispiele und Vorgehensweisen finden Sie unter „Verbindung zu überladenen Slots herstellen“.

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

Implementiert: ` QFrame::event(QEvent *e)`.

[signal] void QLCDNumber::overflow()

Dieses Signal wird immer dann ausgelöst, wenn die ` QLCDNumber ` aufgefordert wird, eine zu große Zahl oder eine zu lange Zeichenkette anzuzeigen.

Es wird niemals von ` setDigitCount()` ausgegeben.

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

Implementiert: ` QFrame::paintEvent` (`QPaintEvent *`).

[slot] void QLCDNumber::setBinMode()

Ruft „ setMode “ (Bin) auf. Dient der Benutzerfreundlichkeit (z. B. zum Anbinden von Schaltflächen).

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

[slot] void QLCDNumber::setDecMode()

Ruft „ setMode “ (Dez.) auf. Dient der Benutzerfreundlichkeit (z. B. zum Verknüpfen von Schaltflächen damit).

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

void QLCDNumber::setDigitCount(int numDigits)

Setzt die aktuelle Anzahl der Stellen auf „ numDigits “. Der Wert muss im Bereich von 0 bis 99 liegen.

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

Siehe auch ` digitCount()`.

[slot] void QLCDNumber::setHexMode()

Ruft „ setMode “ (Hex) auf. Dient der Benutzerfreundlichkeit (z. B. zum Anbinden von Schaltflächen).

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

[slot] void QLCDNumber::setOctMode()

Ruft „ setMode “ auf (Okt.). Wird aus praktischen Gründen bereitgestellt (z. B. zum Verknüpfen von Schaltflächen damit).

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

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

Implementiert: ` QFrame::sizeHint()` const.

© 2026 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.