このページでは

QProgressBar Class

QProgressBar ウィジェットは、水平または垂直の進行状況バーを提供します。詳細...

ヘッダー: #include <QProgressBar>
CMake: find_package(Qt6 REQUIRED COMPONENTS Widgets)
target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
継承元: QWidget

パブリック型

enum Direction { TopToBottom, BottomToTop }

プロパティ

パブリック関数

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

再実装されたパブリック関数

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

パブリックスロット

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

シグナル

void valueChanged(int value)

protected関数

virtual void initStyleOption(QStyleOptionProgressBar *option) const

再実装されたプロテクト関数

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

詳細な説明

42%と表示されている進捗バー

プログレスバーは、操作の進行状況をユーザーに示し、アプリケーションが正常に動作していることをユーザーに安心させるために使用されます。

プログレスバーは「ステップ」という概念を使用します。設定では、ステップ値の最小値と最大値を指定し、後で現在のステップ値を指定すると、完了したステップの割合が表示されます。この割合は、進捗 (value()) -minimum()) を、maximum() -minimum() で割って算出されます。

setMinimum() およびsetMaximum を使用して、ステップの最小数と最大数を指定できます。現在のステップ数はsetValue() で設定します。reset() を使用すると、プログレスバーを最初まで巻き戻すことができます。

最小値と最大値の両方を0に設定すると、バーには進捗率の代わりに処理中を示すインジケーターが表示されます。これは、例えば、QNetworkAccessManager を使用してアイテムをダウンロードする際、ダウンロード対象のアイテムのサイズが判別できない場合などに役立ちます。

QProgressDialogも参照してください 。

メンバータイプのドキュメント

enum QProgressBar::Direction

縦型の進行状況バーについて、text の読み取り方向を指定します。

定数値説明
QProgressBar::TopToBottom0テキストが時計回りに 90 度回転します。
QProgressBar::BottomToTop1テキストが反時計回りに 90 度回転します。

テキストが描画されるかどうかはスタイルによって異なります。現在、CleanLooks および Plastique スタイルではテキストが描画されますが、Mac、Windows、および Windows Vista スタイルでは描画されません。

関連項目: textDirection 。

プロパティのドキュメント

alignment : Qt::Alignment

このプロパティは、プログレスバーの配置を指定します

アクセス関数:

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

format : QString

このプロパティには、現在のテキストを生成するために使用される文字列が格納されます

%p - 完了率に置き換えられます。%v - 現在の値に置き換えられます。%m - 総ステップ数に置き換えられます。

デフォルト値は「%p%」です。

アクセス関数:

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

text()も参照してください 。

invertedAppearance : bool

このプロパティは、プログレスバーの進行状況を反転して表示するかどうかを指定します。

このプロパティが `true` に設定されている場合、プログレスバーは逆方向(例:右から左)に伸びます。デフォルトでは、プログレスバーは反転表示されません。

アクセス関数:

bool invertedAppearance() const
void setInvertedAppearance(bool invert)

関連項目: ` orientation ` および `layoutDirection`。

maximum : int

このプロパティは、プログレスバーの最大値を保持します

このプロパティを設定する際、範囲が有効な状態を維持できるよう、必要に応じてminimum が調整されます。現在の値が新しい範囲外になる場合、reset() によってプログレスバーがリセットされます。

アクセス関数:

int maximum() const
void setMaximum(int maximum)

minimum : int

このプロパティは、プログレスバーの最小値を保持します

このプロパティを設定する際、範囲が有効なままとなるよう、必要に応じてmaximum が調整されます。現在の値が新しい範囲外になった場合、reset() によってプログレスバーがリセットされます。

アクセス関数:

int minimum() const
void setMinimum(int minimum)

orientation : Qt::Orientation

このプロパティは、プログレスバーの向きを指定します

向きは、Qt::Horizontal (デフォルト)またはQt::Vertical のいずれかでなければなりません。

アクセス関数:

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

「 invertedAppearance 」および「textDirection 」も参照してください 。

[read-only] text : QString

このプロパティには、プログレスバーとともに表示される説明テキストが格納されます

返されるテキストは、プログレスバーの中央(または一部のスタイルでは左側)に表示されるテキストと同じです。

テキストに表示される進行状況は、最小値よりも小さい場合がありますが、これは、進行状況が設定される前のプログレスバーが「リセット」状態にあることを示しています。

デフォルトの実装では、テキストにはこれまでの進行状況を示すパーセンテージ値が含まれているか、プログレスバーがリセット状態であるため空白になっています。

アクセス関数:

virtual QString text() const

textDirection : Direction

このプロパティは、縦方向の進行状況バーにおける「text 」の読み取り方向を指定します。

このプロパティは、水平方向の進行状況バーには影響しません。デフォルトでは、読み取り方向はQProgressBar::TopToBottom です。

アクセス関数:

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

関連項目: ` orientation ` および `textVisible`。

textVisible : bool

このプロパティは、現在の完了率を表示するかどうかを指定します

このプロパティは、スタイルによって無視される場合があります(例:QMacStyle ではテキストが決して描画されません)。

アクセス関数:

bool isTextVisible() const
void setTextVisible(bool visible)

textDirectionも参照してください 。

value : int

このプロパティには、プログレスバーの現在の値が格納されます

現在の値を最小値と最大値の範囲外に変更しようとしても、現在の値には影響しません。

アクセス関数:

int value() const
void setValue(int value)

通知シグナル:

void valueChanged(int value)

メンバ関数のドキュメント

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

指定されたparent を使用して、進行状況バーを作成します。

デフォルトでは、最小ステップ値は 0、最大ステップ値は 100 に設定されています。

setRange()も参照してください 。

[virtual noexcept] QProgressBar::~QProgressBar()

デストラクタ。

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

QWidget::event(QEvent *event) を再実装します。

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

option を、QProgressBar の値を用いて初期化します。このメソッドは、QStyleOptionProgressBar が必要であるものの、すべての情報を自分で入力したくないサブクラスにとって便利です。

QStyleOption::initFrom()も参照してください 。

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

プロパティ「QWidget::minimumSizeHint 」のアクセス関数を再実装します。

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

QWidget::paintEvent(QPaintEvent *event) の再実装です。

[slot] void QProgressBar::reset()

進行状況バーをリセットします。進行状況バーが「巻き戻り」、進行状況が表示されなくなります。

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

プログレスバーの最小値と最大値を、それぞれminimum およびmaximum に設定します。

maximum がminimum より小さい場合、minimum が唯一の有効な値となります。

現在の値が新しい範囲外にある場合、プログレスバーはreset() によってリセットされます。

QProgressBar は、setRange(0, 0) を使用することで、未決定の状態に設定できます。

minimum およびmaximumも参照してください 。

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

プロパティ「QWidget::sizeHint 」のアクセス関数を再実装します。

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

このシグナルは、プログレスバーに表示される値が変化したときに発火します。value は、プログレスバーに表示される新しい値です。

注: プロパティ `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.