QtDesigner と ui ファイルを使用して Qt HMI を作成しました。私の QComboBox は、デザイナーと実際に同じ背景色を持っていません:
デザイナー:
実生活:
私はWindows 7を使用しています.OSに依存するかもしれませんが、白い背景が欲しいです.
私は試した:
comboBox->setStyleSheet("QComboBox { background-color: white; }");
しかし、右矢印も描画します。
説明はありますか?
QtDesigner と ui ファイルを使用して Qt HMI を作成しました。私の QComboBox は、デザイナーと実際に同じ背景色を持っていません:
デザイナー:
実生活:
私はWindows 7を使用しています.OSに依存するかもしれませんが、白い背景が欲しいです.
私は試した:
comboBox->setStyleSheet("QComboBox { background-color: white; }");
しかし、右矢印も描画します。
説明はありますか?
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);
コンボは空ですか?
「アプリ」を実行する前に、いくつかの要素を追加して、そのうちの 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);
そしてそれはうまくいくようです。