2016-01-07 7 views
3

QPushButton Я создал в Qt Designer с этой таблицей стилей:Qt - Flat QPushButton, цвет фона не работает

QPushButton#pushButton { 
    background-color: #ffffff; 
} 
QPushButton#pushButton:disabled { 
    background-color: yellow; 
} 
QPushButton#pushButton:pressed { 
    background-color: orange; 
} 
QPushButton#pushButton:focus:pressed { 
    background-color: black; 
} 
QPushButton#pushButton:focus { 
    background-color: green; 
} 
QPushButton#pushButton:hover { 
    background-color: red; 
} 
QPushButton#pushButton:checked { 
    background-color: pink; 
} 

это работает, но когда я проверить «плоский» в свойствах, то это Безразлично» t работа, я хотел бы спросить вас, почему? И как я могу это сделать, если мне нужна квартира QPushButton?

+0

Это очень, очень, очень, очень полезно! Спасибо, что поделились – KGCybeX

+0

@KGCybeX ваш прием :) – tomsk

ответ

7

Для второй части Вашего вопроса: Не использовать «плоское» свойство, но модифицировать таблицу стилей для достижения плоского вида, возможно, как это:

QPushButton#pushButton { 
    background-color: #ffffff; 
    border: 0px; 
} 
/* ... plus the rest of your stylesheet ... */ 

Что касается «почему не он работает? По моему опыту, смешивание таблиц стилей и не-stylesheet-options для виджетов дает много таинственных эффектов, которые трудно объяснить. Я отказался от просьбы о «почему».

+0

Спасибо, что работает :) – tomsk