En esta página

QProgressBar Class

El widget QProgressBar proporciona una barra de progreso horizontal o vertical. Más...

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

Tipos públicos

enum Direction { TopToBottom, BottomToTop }

Propiedades

Funciones públicas

QProgressBar(QWidget *parent = nullptr)
virtual ~QProgressBar()
Qt::Alignment alignment() const
QString format() const
bool invertedAppearance() const
bool isTextVisible() const
int maximum() const
int minimum() const
Qt::Orientation orientation() const
void resetFormat()
void setAlignment(Qt::Alignment alignment)
void setFormat(const QString &format)
void setInvertedAppearance(bool invert)
void setTextDirection(QProgressBar::Direction textDirection)
void setTextVisible(bool visible)
virtual QString text() const
QProgressBar::Direction textDirection() const
int value() const

Funciones públicas reimplementadas

virtual QSize minimumSizeHint() const override
virtual QSize sizeHint() const override

Ranuras públicas

void reset()
void setMaximum(int maximum)
void setMinimum(int minimum)
void setOrientation(Qt::Orientation)
void setRange(int minimum, int maximum)
void setValue(int value)

Señales

void valueChanged(int value)

Funciones protegidas

virtual void initStyleOption(QStyleOptionProgressBar *option) const

Funciones protegidas reimplementadas

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

Descripción detallada

La barra de progreso muestra un 42%.

Una barra de progreso se utiliza para dar al usuario una indicación del progreso de una operación y para asegurarle que la aplicación sigue funcionando.

La barra de progreso utiliza el concepto de pasos. Se configura especificando los valores mínimo y máximo posibles de los pasos, y mostrará el porcentaje de pasos que se han completado cuando posteriormente se le indique el valor actual de los pasos. El porcentaje se calcula dividiendo el progreso (value() - minimum()) dividido por maximum() - minimum().

Puede especificar el número mínimo y máximo de pasos con setMinimum() y setMaximum. El número actual de pasos se establece con setValue(). La barra de progreso se puede rebobinar hasta el principio con reset().

Si tanto el mínimo como el máximo se fijan en 0, la barra muestra un indicador de ocupado en lugar de un porcentaje de pasos. Esto es útil, por ejemplo, cuando se utiliza QNetworkAccessManager para descargar elementos cuando no pueden determinar el tamaño del elemento que se está descargando.

Véase también QProgressDialog.

Documentación de tipos de miembros

enum QProgressBar::Direction

Especifica la dirección de lectura de text para las barras de progreso verticales.

ConstanteValorDescripción
QProgressBar::TopToBottom0El texto se gira 90 grados en el sentido de las agujas del reloj.
QProgressBar::BottomToTop1El texto se gira 90 grados en sentido contrario a las agujas del reloj.

Tenga en cuenta que el hecho de que el texto se dibuje o no depende del estilo. Actualmente CleanLooks y Plastique dibujan el texto. Los estilos Mac, Windows y WindowsVista no lo hacen.

Véase también textDirection.

Documentación de propiedades

alignment : Qt::Alignment

Esta propiedad contiene la alineación de la barra de progreso

Funciones de acceso:

Qt::Alignment alignment() const
void setAlignment(Qt::Alignment alignment)

format : QString

Esta propiedad contiene la cadena utilizada para generar el texto actual

%p - se sustituye por el porcentaje completado. %v - se sustituye por el valor actual. %m - se sustituye por el número total de pasos.

El valor por defecto es "%p%".

Funciones de acceso:

QString format() const
void setFormat(const QString &format)
void resetFormat()

Véase también text().

invertedAppearance : bool

Esta propiedad mantiene si una barra de progreso muestra o no su progreso invertido

Si esta propiedad es true, la barra de progreso crece en la otra dirección (por ejemplo, de derecha a izquierda). Por defecto, la barra de progreso no está invertida.

Funciones de acceso:

bool invertedAppearance() const
void setInvertedAppearance(bool invert)

Véase también orientation y layoutDirection.

maximum : int

Esta propiedad contiene el valor máximo de la barra de progreso.

Al establecer esta propiedad, la dirección minimum se ajusta si es necesario para garantizar que el rango sigue siendo válido. Si el valor actual queda fuera del nuevo rango, la barra de progreso se reinicia con reset().

Funciones de acceso:

int maximum() const
void setMaximum(int maximum)

minimum : int

Esta propiedad contiene el valor mínimo de la barra de progreso.

Al establecer esta propiedad, maximum se ajusta si es necesario para asegurar que el rango sigue siendo válido. Si el valor actual queda fuera del nuevo rango, la barra de progreso se reinicia con reset().

Funciones de acceso:

int minimum() const
void setMinimum(int minimum)

orientation : Qt::Orientation

Esta propiedad contiene la orientación de la barra de progreso

La orientación debe ser Qt::Horizontal (por defecto) o Qt::Vertical.

Funciones de acceso:

Qt::Orientation orientation() const
void setOrientation(Qt::Orientation)

Véase también invertedAppearance y textDirection.

[read-only] text : QString

Esta propiedad contiene el texto descriptivo mostrado con la barra de progreso

El texto devuelto es el mismo que se muestra en el centro (o en algunos estilos, a la izquierda) de la barra de progreso.

El progreso mostrado en el texto puede ser menor que el valor mínimo, indicando que la barra de progreso está en el estado de "reinicio" antes de que se establezca cualquier progreso.

En la implementación por defecto, el texto o bien contiene un valor porcentual que indica el progreso hasta el momento, o bien está en blanco porque la barra de progreso se encuentra en el estado de reinicio.

Funciones de acceso:

virtual QString text() const

textDirection : Direction

Esta propiedad contiene la dirección de lectura de text para las barras de progreso verticales.

Esta propiedad no tiene impacto en las barras de progreso horizontales. Por defecto, la dirección de lectura es QProgressBar::TopToBottom.

Funciones de acceso:

QProgressBar::Direction textDirection() const
void setTextDirection(QProgressBar::Direction textDirection)

Véase también orientation y textVisible.

textVisible : bool

Esta propiedad mantiene si el porcentaje completado actual debe ser mostrado

Esta propiedad puede ser ignorada por el estilo (por ejemplo, QMacStyle nunca dibuja el texto).

Funciones de acceso:

bool isTextVisible() const
void setTextVisible(bool visible)

Véase también textDirection.

value : int

Esta propiedad contiene el valor actual de la barra de progreso.

Intentar cambiar el valor actual a uno fuera del rango mínimo-máximo no tiene efecto sobre el valor actual.

Funciones de acceso:

int value() const
void setValue(int value)

Señal del notificador:

void valueChanged(int value)

Documentación de funciones miembro

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

Construye una barra de progreso con la dirección parent.

Por defecto, el valor mínimo del paso es 0, y el máximo 100.

Véase también setRange().

[virtual noexcept] QProgressBar::~QProgressBar()

Destructor.

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

Reimplementa: QWidget::event(QEvent *event).

[virtual protected] void QProgressBar::initStyleOption(QStyleOptionProgressBar *option) const

Inicializa option con los valores de este QProgressBar. Este método es útil para subclases cuando necesitan un QStyleOptionProgressBar, pero no quieren rellenar toda la información ellos mismos.

Véase también QStyleOption::initFrom().

[override virtual] QSize QProgressBar::minimumSizeHint() const

Reimplementa una función de acceso para la propiedad: QWidget::minimumSizeHint.

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

Reimplementa: QWidget::paintEvent(QPaintEvent *event).

[slot] void QProgressBar::reset()

Reinicia la barra de progreso. La barra de progreso "rebobina" y no muestra ningún progreso.

[slot] void QProgressBar::setRange(int minimum, int maximum)

Establece los valores mínimo y máximo de la barra de progreso en minimum y maximum respectivamente.

Si maximum es menor que minimum, minimum se convierte en el único valor legal.

Si el valor actual cae fuera del nuevo rango, la barra de progreso se reinicia con reset().

QProgressBar puede ponerse en estado indeterminado utilizando setRange(0, 0).

Véase también minimum y maximum.

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

Reimplementa una función de acceso para la propiedad: QWidget::sizeHint.

[signal] void QProgressBar::valueChanged(int value)

Esta señal se emite cuando cambia el valor mostrado en la barra de progreso. value es el nuevo valor mostrado por la barra de progreso.

Nota: Señal notificadora para la propiedad value.

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