2012-09-21 30 views
2

我使用樣式表來設置QPushbutton的背景色:Qt的樣式按鈕的背景顏色

QPushButton { 
    background-color: red; 
    border-style: outset; 
    border-width: 2px; 
    border-color: beige; 
} 

這是工作,但是當我改變了QWidget的背景色爲好,按鈕有與QWidget具有相同的背景色(在此示例中,該按鈕是黑色而不是紅色)。

QWidget { 
    background-color: black; 
} 

有沒有人知道如何在設置QWidget的背景顏色時使按鈕變成彩色?

+1

您可以命名您的小部件並將樣式表更改爲QWidget#name {...},這應該只會影響具有該名稱的小部件。 – Dragarro

+3

注意事項很重要。這些問題(實際上幾乎是這個確切的問題)在這裏討論[http://doc.qt.digia.com/4.7-snapshot/stylesheet-syntax.html#conflict-resolution) – BoBTFish

回答

1

我不完全知道爲什麼會發生這種情況,但將按鈕的樣式表與小部件樣式表一起使用會帶來所需的效果。例如,在你的情況下,控件的樣式將作如下

QWidget 
{ 
    background-color: black; 
} 

QPushButton 
{ 
    background-color: red; 
    border-style: outset; 
    border-width: 2px; 
    border-color: beige; 
} 

希望這有助於!祝你好運! :D