PyQt5 – Set background color to editable OFF state ComboBox when pressed

In this article we will see how we can set the background color to the editable combo box which is currently in the OFF state and when it get pressed. OFF state of the combo box is when the list menu is not opened. This background color will only appear if the combo box is editable and in OFF state and when combo box get pressed. Combo box is made editable with the help of setEditable method. In order to do so we have to change the style sheet code, below is the style sheet code
QComboBox::editable:!OFF:pressed
{
background-color : lightgreen;
}
Below is the implementation
Python3
| # importing librariesfromPyQt5.QtWidgets import*fromPyQt5 importQtCore, QtGuifromPyQt5.QtGui import*fromPyQt5.QtCore import*importsysclassWindow(QMainWindow):    def__init__(self):        super().__init__()        # setting title        self.setWindowTitle("Python ")        # setting geometry        self.setGeometry(100, 100, 600, 400)        # calling method        self.UiComponents()        # showing all the widgets        self.show()    # method for widgets    defUiComponents(self):        # creating a combo box widget        self.combo_box =QComboBox(self)        # setting geometry of combo box        self.combo_box.setGeometry(200, 150, 150, 30)        # making combo box editable        self.combo_box.setEditable(True)        # geek list        geek_list =["Sayian", "SuperSayian", "SuperSayian 2", "SuperSayian B"]        # adding list of items to combo box        self.combo_box.addItems(geek_list)        # adding background color to the combo box when it is editable        # and when it is in OFF state and it get pressed        self.combo_box.setStyleSheet("QComboBox::editable:! on:pressed"                                     "{"                                     "background-color: lightgreen;"                                     "}")# create pyqt5 appApp =QApplication(sys.argv)# create the instance of our Windowwindow =Window()# start the appsys.exit(App.exec()) | 
Output :
 
				 
					


