Sur cette page

QLCDNumber Class

Le widget QLCDNumber affiche un nombre avec des chiffres de type LCD. Plus d'informations...

En-tête : #include <QLCDNumber>
CMake : find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake : QT += widgets
Héritages : QFrame

Types publics

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

Propriétés

Fonctions publiques

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

Fonctions publiques réimplémentées

virtual QSize sizeHint() const override

Emplacements publics

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

Signaux

void overflow()

Fonctions protégées réimplémentées

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

Description détaillée

"1234" avec une apparence numérique semblable à celle d'un écran à cristaux liquides

Il peut afficher un nombre dans à peu près n'importe quelle taille. Il peut afficher des nombres décimaux, hexadécimaux, octaux ou binaires. Il est facile de se connecter à des sources de données en utilisant l'emplacement display(), qui est surchargé pour prendre n'importe lequel des cinq types d'arguments.

Il existe également des slots pour changer la base avec setMode() et le point décimal avec setSmallDecimalPoint().

QLCDNumber émet le signal overflow() lorsqu'on lui demande d'afficher quelque chose en dehors de sa plage. La plage est définie par setDigitCount(), mais setSmallDecimalPoint() l'influence également. Si l'affichage est défini en hexadécimal, octal ou binaire, l'équivalent entier de la valeur est affiché.

Ces chiffres et d'autres symboles peuvent être affichés : 0/O, 1, 2, 3, 4, 5/S, 6, 7, 8, 9/g, moins, point décimal, A, B, C, D, E, F, h, H, L, o, P, r, u, U, Y, deux points, signe de degré (qui est spécifié comme guillemet simple dans la chaîne) et espace. QLCDNumber remplace les caractères illégaux par des espaces.

Il n'est pas possible d'extraire le contenu d'un objet QLCDNumber, bien que vous puissiez extraire la valeur numérique à l'aide de value(). Si vous avez vraiment besoin du texte, nous vous recommandons de connecter les signaux qui alimentent l'emplacement display() à un autre emplacement et d'y stocker la valeur.

Incidemment, QLCDNumber est la partie la plus ancienne de Qt, dont les racines remontent à un programme BASIC sur le Sinclair Spectrum.

Voir aussi QLabel et QFrame.

Documentation sur les types de membres

enum QLCDNumber::Mode

Ce type détermine la manière dont les nombres sont affichés.

ConstanteValeurDescription
QLCDNumber::Hex0Hexadécimal
QLCDNumber::Dec1Décimale
QLCDNumber::Oct2Octal
QLCDNumber::Bin3Binaire

Si l'affichage est réglé sur hexadécimal, octal ou binaire, l'équivalent entier de la valeur est affiché.

enum QLCDNumber::SegmentStyle

Ce type détermine l'aspect visuel du widget QLCDNumber.

ConstanteValeurDescription
QLCDNumber::Outline0donne des segments en relief remplis de la couleur d'arrière-plan.
QLCDNumber::Filled1donne des segments en relief remplis de la couleur du texte de la fenêtre.
QLCDNumber::Flat2donne des segments plats remplis de la couleur windowText.

Documentation de la propriété

digitCount : int

Cette propriété contient le nombre actuel de chiffres affichés

Correspond au nombre actuel de chiffres. Si QLCDNumber::smallDecimalPoint est faux, la virgule occupe une position de chiffre.

Par défaut, cette propriété contient une valeur de 5.

Fonctions d'accès :

int digitCount() const
void setDigitCount(int numDigits)

Voir aussi smallDecimalPoint.

intValue : int

Cette propriété contient la valeur affichée arrondie à l'entier le plus proche

Cette propriété correspond à l'entier le plus proche de la valeur courante affichée par le LCDNumber. C'est la valeur utilisée pour les modes hexadécimal, octal et binaire.

Si la valeur affichée n'est pas un nombre, la propriété a une valeur de 0.

Par défaut, cette propriété contient la valeur 0.

Fonctions d'accès :

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

mode : Mode

Cette propriété contient le mode d'affichage actuel (base numérique)

Correspond au mode d'affichage actuel, qui est l'un des modes suivants : Bin, Oct, Dec (par défaut) et Hex. Le mode Dec peut afficher des valeurs en virgule flottante, les autres modes affichent l'équivalent en nombres entiers.

Fonctions d'accès :

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

Voir également smallDecimalPoint(), setHexMode(), setDecMode(), setOctMode() et setBinMode().

segmentStyle : SegmentStyle

Cette propriété définit le style de l'écran LCDNumber.

StyleRésultat
OutlineProduit des segments en relief remplis de la couleur d'arrière-plan
Filled (par défaut).Produit des segments en relief remplis de la couleur d'avant-plan.
FlatProduit des segments plats remplis de la couleur d'avant-plan.

Outline et Filled utiliseront également QPalette::light() et QPalette::dark() pour les effets d'ombre.

Fonctions d'accès :

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

smallDecimalPoint : bool

Cette propriété définit le style du point décimal

Si true, le point décimal est dessiné entre deux positions de chiffres. Sinon, il occupe une position propre, c'est-à-dire qu'il est dessiné dans une position de chiffre. La valeur par défaut est false.

L'espace entre les chiffres est légèrement élargi lorsque la virgule est dessinée entre les chiffres.

Fonctions d'accès :

bool smallDecimalPoint() const
void setSmallDecimalPoint(bool)

Voir aussi mode.

value : double

Cette propriété contient la valeur affichée

Cette propriété correspond à la valeur courante affichée par le LCDNumber.

Si la valeur affichée n'est pas un nombre, la propriété a une valeur de 0.

Par défaut, cette propriété contient la valeur 0.

Fonctions d'accès :

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

Documentation des fonctions membres

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

Construit un nombre LCD, fixe le nombre de chiffres à 5, la base à décimale, le mode de point décimal à "petit" et le style de cadre à une boîte en relief. L'argument segmentStyle() prend la valeur Outline.

L'argument parent est transmis au constructeur QFrame.

Voir aussi setDigitCount() et setSmallDecimalPoint().

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

Construit un nombre LCD, fixe le nombre de chiffres à numDigits, la base à décimale, le mode de point décimal à "petit" et le style de cadre à une boîte surélevée. La valeur de segmentStyle() est fixée à Filled.

L'argument parent est transmis au constructeur QFrame.

Voir aussi setDigitCount() et setSmallDecimalPoint().

[virtual noexcept] QLCDNumber::~QLCDNumber()

Détruit le numéro de l'écran à cristaux liquides.

bool QLCDNumber::checkOverflow(double num) const

Renvoie true si num est trop grand pour être affiché dans son intégralité ; sinon, renvoie false.

Voir aussi display(), digitCount(), et smallDecimalPoint().

bool QLCDNumber::checkOverflow(int num) const

Renvoie true si num est trop grand pour être affiché dans son intégralité ; sinon, renvoie false.

Il s'agit d'une fonction surchargée.

Voir aussi display(), digitCount() et smallDecimalPoint().

int QLCDNumber::digitCount() const

Renvoie le nombre actuel de chiffres.

Remarque : fonction Getter pour la propriété digitCount.

Voir également setDigitCount().

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

Affiche le nombre représenté par la chaîne s.

Cette version de la fonction ne tient pas compte de mode() et smallDecimalPoint().

Ces chiffres et d'autres symboles peuvent être affichés : 0/O, 1, 2, 3, 4, 5/S, 6, 7, 8, 9/g, moins, point décimal, A, B, C, D, E, F, h, H, L, o, P, r, u, U, Y, deux points, signe de degré (qui est spécifié comme guillemet simple dans la chaîne) et espace. QLCDNumber remplace les caractères illégaux par des espaces.

Note : Fonction de définition pour les propriétés intValue et value.

Note : Ce slot est surchargé. Pour se connecter à ce slot :

// 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); });
Pour plus d'exemples et d'approches, voir se connecter à des slots surchargés.

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

Affiche le numéro num.

Remarque : Fonction de définition des propriétés intValue et value.

Note : Ce slot est surchargé. Pour se connecter à ce slot :

// 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); });
Pour plus d'exemples et d'approches, voir se connecter à des slots surchargés.

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

Affiche le numéro num.

Remarque : Fonction de définition des propriétés intValue et value.

Note : Ce slot est surchargé. Pour se connecter à ce slot :

// 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); });
Pour plus d'exemples et d'approches, voir se connecter à des slots surchargés.

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

Réimplémente : QFrame::event(QEvent *e).

[signal] void QLCDNumber::overflow()

Ce signal est émis lorsque l'on demande à QLCDNumber d'afficher un nombre trop grand ou une chaîne de caractères trop longue.

Il n'est jamais émis par setDigitCount().

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

Réimplémente : QFrame::paintEvent(QPaintEvent *).

[slot] void QLCDNumber::setBinMode()

Appels setMode(Bin). Fourni pour des raisons de commodité (par exemple pour y connecter des boutons).

Voir aussi setMode(), setHexMode(), setDecMode(), setOctMode() et mode().

[slot] void QLCDNumber::setDecMode()

Appelle setMode(Dec). Fourni pour des raisons de commodité (par exemple pour y connecter des boutons).

Voir aussi setMode(), setHexMode(), setOctMode(), setBinMode() et mode().

void QLCDNumber::setDigitCount(int numDigits)

Définit le nombre actuel de chiffres à numDigits. Doit être compris entre 0 et 99.

Remarque : fonction de définition de la propriété digitCount.

Voir également digitCount().

[slot] void QLCDNumber::setHexMode()

Appels setMode(Hex). Fourni pour des raisons de commodité (par exemple pour y connecter des boutons).

Voir aussi setMode(), setDecMode(), setOctMode(), setBinMode() et mode().

[slot] void QLCDNumber::setOctMode()

Appelle setMode(Oct). Fourni pour des raisons de commodité (par exemple pour y connecter des boutons).

Voir aussi setMode(), setHexMode(), setDecMode(), setBinMode() et mode().

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

Réimplémente : 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.