«QScrollBar: вертикальный» недопустим, если объединить его с другими элементами управления в таблице стилей QComboBox - PullRequest
1 голос
/ 07 февраля 2020

Я использую Qt Creator 4.5.2 (Qt 5.9.5, G CC 7.3.0 64-bit) и работаю в Ubuntu 18.04.

У меня есть QComboBox и я пытаюсь его установить таблицы стилей. Но у меня возникают следующие проблемы:

Если я это сделаю:

setStyleSheet("selection-color: rgb(255, 0, 0);"); 

или

setStyleSheet("QScrollBar:vertical {background: red;}");

отдельно, таблица стилей действительна.

Но если я соберу их вместе, например:

setStyleSheet("selection-color: rgb(255, 0, 0); QScrollBar:vertical {background: red;}");

Таблица стилей недействительна. Я уже пробовал как в коде, так и в QT Designer. В коде я получил это: Не удалось разобрать таблицу стилей объекта 0x555556118eb0. В конструкторе QT просто говорится «Неверная таблица стилей»

Почему?

1 Ответ

0 голосов
/ 07 февраля 2020

Из того, что вы указываете, можно сделать вывод, что если вы устанавливаете свойства без указания классов виджетов в качестве селектора, то предполагается, что свойства будут влиять на один и тот же виджет, но кажется, что если вы установите хотя бы один селектор, Вы должны установить селекторы на все элементы, в вашем случае вы можете использовать:

<b>QComboBox</b>{selection-color: rgb(255, 0, 0);}
QScrollBar:vertical{background: red;}
...