他のデフォルトのグラデーションと効果を変更せずに、デフォルトの QProgressbar スタイルで緑の色合いを変更する方法 (少し目立つ「フローホワイトチャンク」効果):
デフォルトの QProgressbar スタイル
.
qlineargradientを使用してQProgressBar::chunk: horizontalの背景色の新しい組み合わせを設定しようとしましたが、そのようなスタイルシートで前述の効果を維持することに成功しませんでした。
他のデフォルトのグラデーションと効果を変更せずに、デフォルトの QProgressbar スタイルで緑の色合いを変更する方法 (少し目立つ「フローホワイトチャンク」効果):
デフォルトの QProgressbar スタイル
.
qlineargradientを使用してQProgressBar::chunk: horizontalの背景色の新しい組み合わせを設定しようとしましたが、そのようなスタイルシートで前述の効果を維持することに成功しませんでした。
おそらく、次のようなタイマーで StyleSheet を更新してみてください:
mRunner = 0.1;
QTimer *mTimer = new QTimer(this);
connect(mTimer, SIGNAL(timeout()), this, SLOT(updateProgress()));
mTimer->start(40);
メソッドは、新しいステップごとに勾配を変更する必要があります。
void MainWindow::updateProgress()
{
QString lStyle = QString("QProgressBar::chunk {background-color: qlineargradient(x1:0, y1:0, x2:1, y2:1, stop:0 #b4b4b4, stop:%1 white, stop:1 #b4b4b4);}").arg(mRunner);
ui->progressBar->setStyleSheet(lStyle);
mRunner += 0.01;
if (mRunner > 1) {
mRunner = 0.1;
}
}