En esta página

QLCDNumber Class

El widget QLCDNumber muestra un número con dígitos tipo LCD. Más...

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

Tipos públicos

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

Propiedades

Funciones públicas

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

Funciones públicas reimplementadas

virtual QSize sizeHint() const override

Ranuras públicas

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

Señales

void overflow()

Funciones protegidas reimplementadas

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

Descripción Detallada

"1234" con apariencia digital LCD

Puede mostrar un número en casi cualquier tamaño. Puede mostrar números decimales, hexadecimales, octales o binarios. Es fácil conectarse a fuentes de datos utilizando la ranura display(), que está sobrecargada para tomar cualquiera de los cinco tipos de argumentos.

También hay ranuras para cambiar la base con setMode() y el punto decimal con setSmallDecimalPoint().

QLCDNumber emite la señal overflow() cuando se le pide que muestre algo más allá de su rango. El rango se establece mediante setDigitCount(), pero setSmallDecimalPoint() también influye en él. Si la visualización se establece en hexadecimal, octal o binario, se muestra el equivalente entero del valor.

Se pueden mostrar estos dígitos y otros símbolos: 0/O, 1, 2, 3, 4, 5/S, 6, 7, 8, 9/g, menos, punto decimal, A, B, C, D, E, F, h, H, L, o, P, r, u, U, Y, dos puntos, signo de grado (que se especifica como comilla simple en la cadena) y espacio. QLCDNumber sustituye los caracteres ilegales por espacios.

No es posible recuperar el contenido de un objeto QLCDNumber, aunque sí se puede recuperar el valor numérico con value(). Si realmente necesita el texto, le recomendamos que conecte las señales que alimentan la ranura display() también a otra ranura y almacene allí el valor.

Por cierto, QLCDNumber es la parte más antigua de Qt, remontándose sus raíces a un programa BASIC en el Sinclair Spectrum.

Ver también QLabel y QFrame.

Documentación de tipos de miembros

enum QLCDNumber::Mode

Este tipo determina cómo se muestran los números.

ConstanteValorDescripción
QLCDNumber::Hex0Hexadecimal
QLCDNumber::Dec1Decimal
QLCDNumber::Oct2Octal
QLCDNumber::Bin3Binario

Si la pantalla está configurada en hexadecimal, octal o binario, se muestra el equivalente entero del valor.

enum QLCDNumber::SegmentStyle

Este tipo determina el aspecto visual del widget QLCDNumber.

ConstanteValorDescripción
QLCDNumber::Outline0da segmentos en relieve rellenos con el color de fondo.
QLCDNumber::Filled1da segmentos en relieve rellenados con el color del texto de la ventana.
QLCDNumber::Flat2da segmentos planos rellenados con el color del texto de la ventana.

Documentación de la propiedad

digitCount : int

Esta propiedad contiene el número actual de dígitos mostrados

Corresponde al número actual de dígitos. Si QLCDNumber::smallDecimalPoint es falso, el punto decimal ocupa una posición de dígito.

Por defecto, esta propiedad contiene un valor de 5.

Funciones de acceso:

int digitCount() const
void setDigitCount(int numDigits)

Véase también smallDecimalPoint.

intValue : int

Esta propiedad contiene el valor mostrado redondeado al entero más cercano

Esta propiedad corresponde al entero más cercano al valor actual mostrado por el LCDNumber. Este es el valor utilizado para los modos hexadecimal, octal y binario.

Si el valor mostrado no es un número, la propiedad tiene un valor de 0.

Por defecto, esta propiedad contiene el valor 0.

Funciones de acceso:

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

mode : Mode

Esta propiedad contiene el modo de visualización actual (base numérica)

Corresponde al modo de visualización actual, que es uno de los siguientes: Bin, Oct, Dec (por defecto) y Hex. El modo Dec puede mostrar valores en coma flotante, los demás modos muestran el equivalente en números enteros.

Funciones de acceso:

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

Véase también smallDecimalPoint(), setHexMode(), setDecMode(), setOctMode() y setBinMode().

segmentStyle : SegmentStyle

Esta propiedad contiene el estilo del LCDNumber.

EstiloResultado
OutlineProduce segmentos en relieve rellenos con el color de fondo
Filled (por defecto).Produce segmentos en relieve rellenados con el color de primer plano.
FlatProduce segmentos planos rellenos con el color de primer plano.

Outline y Filled utilizarán además QPalette::light() y QPalette::dark() para los efectos de sombra.

Funciones de acceso:

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

smallDecimalPoint : bool

Esta propiedad mantiene el estilo del punto decimal

Si es true el punto decimal se dibuja entre dos posiciones de dígito. Si no, ocupa una posición de dígito propia, es decir, se dibuja en una posición de dígito. Por defecto es false.

El espacio entre dígitos se ensancha ligeramente cuando el punto decimal se dibuja entre los dígitos.

Funciones de acceso:

bool smallDecimalPoint() const
void setSmallDecimalPoint(bool)

Véase también mode.

value : double

Esta propiedad contiene el valor mostrado

Esta propiedad corresponde al valor actual mostrado por el LCDNumber.

Si el valor mostrado no es un número, la propiedad tiene el valor 0.

Por defecto, esta propiedad contiene el valor 0.

Funciones de acceso:

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

Documentación de Funciones Miembro

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

Construye un número LCD, establece el número de dígitos a 5, la base a decimal, el modo de punto decimal a 'pequeño' y el estilo de marco a una caja elevada. El argumento segmentStyle() se establece en Outline.

El argumento parent se pasa al constructor QFrame.

Véase también setDigitCount() y setSmallDecimalPoint().

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

Construye un número LCD, establece el número de dígitos a numDigits, la base a decimal, el modo de punto decimal a 'pequeño' y el estilo de marco a una caja elevada. El argumento segmentStyle() se establece en Filled.

El argumento parent se pasa al constructor QFrame.

Véase también setDigitCount() y setSmallDecimalPoint().

[virtual noexcept] QLCDNumber::~QLCDNumber()

Destruye el número LCD.

bool QLCDNumber::checkOverflow(double num) const

Devuelve true si num es demasiado grande para mostrarse en su totalidad; en caso contrario devuelve false.

Véase también display(), digitCount() y smallDecimalPoint().

bool QLCDNumber::checkOverflow(int num) const

Devuelve true si num es demasiado grande para mostrarse en su totalidad; en caso contrario devuelve false.

Se trata de una función sobrecargada.

Véase también display(), digitCount() y smallDecimalPoint().

int QLCDNumber::digitCount() const

Devuelve el número actual de dígitos.

Nota: Función Getter para la propiedad digitCount.

Véase también setDigitCount().

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

Muestra el número representado por la cadena s.

Esta versión de la función no tiene en cuenta mode() y smallDecimalPoint().

Se pueden mostrar estos dígitos y otros símbolos: 0/O, 1, 2, 3, 4, 5/S, 6, 7, 8, 9/g, menos, punto decimal, A, B, C, D, E, F, h, H, L, o, P, r, u, U, Y, dos puntos, signo de grado (que se especifica como comilla simple en la cadena) y espacio. QLCDNumber sustituye los espacios por caracteres ilegales.

Nota: Función setter para las propiedades intValue y value.

Nota: Esta ranura está sobrecargada. Para conectarse a esta ranura:

// 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); });
Para ver más ejemplos y enfoques, consulte la conexión a ranuras sobrecargadas.

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

Muestra el número num.

Nota: Función Setter para las propiedades intValue y value.

Nota : Esta ranura está sobrecargada. Para conectarse a esta ranura:

// 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); });
Para más ejemplos y enfoques, consulte la conexión a ranuras sobrecargadas.

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

Muestra el número num.

Nota: Función Setter para las propiedades intValue y value.

Nota : Esta ranura está sobrecargada. Para conectarse a esta ranura:

// 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); });
Para más ejemplos y enfoques, consulte la conexión a ranuras sobrecargadas.

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

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

[signal] void QLCDNumber::overflow()

Esta señal se emite cuando se pide a QLCDNumber que muestre un número demasiado grande o una cadena demasiado larga.

Nunca es emitida por setDigitCount().

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

Reimplementa: QFrame::paintEvent(QPaintEvent *).

[slot] void QLCDNumber::setBinMode()

Llamadas setMode(Bin). Se proporciona por comodidad (por ejemplo, para conectarle botones).

Véase también setMode(), setHexMode(), setDecMode(), setOctMode() y mode().

[slot] void QLCDNumber::setDecMode()

Llamadas setMode(Dec). Se proporciona por comodidad (por ejemplo, para conectarle botones).

Véase también setMode(), setHexMode(), setOctMode(), setBinMode() y mode().

void QLCDNumber::setDigitCount(int numDigits)

Establece el número actual de dígitos en numDigits. Debe estar en el rango 0..99.

Nota: Función Setter para la propiedad digitCount.

Véase también digitCount().

[slot] void QLCDNumber::setHexMode()

Llamadas setMode(Hex). Se proporciona por comodidad (por ejemplo, para conectarle botones).

Véase también setMode(), setDecMode(), setOctMode(), setBinMode() y mode().

[slot] void QLCDNumber::setOctMode()

Llamadas setMode(Oct). Se proporciona por comodidad (por ejemplo, para conectarle botones).

Véase también setMode(), setHexMode(), setDecMode(), setBinMode() y mode().

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

Reimplementa: 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.