2017-04-11 17 views
0

QtでQComboBoxのスタイルを変更したいと思います。選択されていないアイテムのテキスト(FR、ES、IT、..)のテキストを黒く塗りつぶしてください。QComboBoxで非選択アイテムの色を変更するにはどうすればいいですか? (スタイルシート)

enter image description here

これは、使用するスタイルシートです:

QComboBox 
{ 

background-color:black; 

border-color:white; 

color:red; 

border-width: 1px; 

border-style: solid; 

padding: 1px 0px 1px 3px; 

selection-color:white; 

} 

答えて

1

コンボボックスの項目のスタイルを変更するには、インナーQAbstractItemView

例のスタイルを設定することができます

QComboBox QAbstractItemView { 
    background-color: rgb(41,41,41); 
    color: white; 

    selection-background-color: rgb(88, 88, 88); 
    selection-color: rgb(200, 200, 200); 
} 
+0

はあなたに感謝。それはうまく動作します! –

0

dydilの回答はうまくいくはずですが、f QComboBox上のセレクタと疑似状態を介してさらに制御するには、QComboBox::setView()を使用する必要があります。

擬似状態を使用した例:

QComboBox QAbstractItemView::item{color: blue;} 
QComboBox QAbstractItemView::item:hover{color: red;} 
QComboBox QAbstractItemView::item:selected{background-color: green;} 

その後にビューを追加します。

myComboBox->setView(new QListView); 
関連する問題