Наблюдается такое явление один и тот же код в PyQt и PySide работает по-разному, при этом в PySide обнаружен баг (по всей видимости баг или может я туплю).
from PyQt5.Qt import QWidget, QApplication, QComboBox #Создаем унаследованный класс от QComboBox class CComboBox(QComboBox): #Переопределяем enterEvent -> когда наводится курсор на CComboBox, то он меняет цвета def enterEvent(self, event): #Задаем стиль по css self.setStyleSheet('QComboBox{background-color: rgb(0,200,255);\ selection-background-color: rgb(0,200,255);\ color: rgb(0,63,91);}') #Переопределяем leaveEvent -> когда отводится курсор от CComboBox, то он меняет цвета def leaveEvent(self, event): #Задаем стиль по css self.setStyleSheet('background-color: rgb(255,255,255);\ selection-background-color: rgb(0,80,91);\ color: rgb(0,63,91);') class Table(QWidget): def __init__(self): super().__init__() self.window1() def window1 (self): self.setWindowTitle('Record') self.resize(339, 226) #Создаем объект класса CComboBox, который отображаем на QWidget self.toolBox = CComboBox(self) #Добавляем и пичкаем его инфой self.toolBox.addItem('Blue-Crisstal') self.toolBox.addItem('Black-White') self.toolBox.setFixedSize(120,20) self.toolBox.setCurrentIndex(0) #Стиль, который появлятся при запуске, далее уже определяется по enterEvent\leaveEvent self.toolBox.setStyleSheet('QComboBox{background-color: rgb(200,200,250);\ selection-background-color: rgb(0,80,91);\ color: rgb(0,63,91);}') if __name__ == '__main__': import sys app = QApplication(sys.argv) window = Table() window.show() sys.exit(app.exec_())
Тот же код вставляем в PySide - как всегда, что-то не нравится ему.
Так вот сам процесс :
Когда мы наводим на ComboBox, то он меняет цвет -> далее нажимаем на него (тем самым раскрывая список) и обнажуриваем в PySide, что цвет выделения элементов выпадающего списка не изменился и остался стандартным (как в винде синим таким, можете стрелочками по списку походить). Тем самым, это наводит на мысль, что некорректно работает
selection-background-color
Также можно заметить, что по-разному записан код в css стиле, где-то с QComboBox (в enterEvent):
('QComboBox{background-color: rgb(0,200,255);\ selection-background-color: rgb(0,200,255);\ color: rgb(0,63,91);}')
('background-color: rgb(255,255,255);\ selection-background-color: rgb(0,80,91);\ color: rgb(0,63,91);')
Желательно чтобы кто-нибудь тоже потестил этот код на PyQt и PySide
P.S. Очень сильно надо приглядеться к стилям css (я уже вдоль поперек как мог проглядел), возможно скобку не поправилам пайтона поставил или еще что, PySide обычно такие ошибки не пропускает. Уж очень эта проблема похожа лишь на то, что неправильно задан стиль