1

QtDesigner と ui ファイルを使用して Qt HMI を作成しました。私の QComboBox は、デザイナーと実際に同じ背景色を持っていません:

デザイナー:

ここに画像の説明を入力

実生活:

ここに画像の説明を入力

私はWindows 7を使用しています.OSに依存するかもしれませんが、白い背景が欲しいです.

私は試した:

comboBox->setStyleSheet("QComboBox { background-color: white; }");

しかし、右矢印も描画します。

説明はありますか?

4

3 に答える 3

0

QPalette :: Baseを白に変更してみましたか?スタイルシートを使用せずにそれを行うことができます。

QComboBox box = new QComboBox();
QPalette p = box.palette();

p.setColor(QPalette::Active, QPalette::Base, Qt::white);
p.setColor(QPalette::Inactive, QPalette::Base, Qt::white);

box.setPalette(p);
于 2013-03-22T18:28:01.293 に答える
0

コンボは空ですか?

「アプリ」を実行する前に、いくつかの要素を追加して、そのうちの 1 つを選択してみてください。

于 2013-03-22T17:03:13.820 に答える
-1

はのQPalette::Base背景を変更しませんQComboBox

代わりに私は使用しました:

QPalette palette = ui->combo->palette();
palette.setColor(QPalette::Active, QPalette::Button, Qt::white);
palette.setColor(QPalette::Inactive, QPalette::Button, Qt::white);
ui->combo->setPalette(palette);

そしてそれはうまくいくようです。

于 2013-03-26T16:17:16.230 に答える