PyQt5 QCalendarWidget - Background Color to the Year Spin Box
Last Updated : 21 Jun, 2020
In this article we will see how we can set background color to the year spin box of the QCalendarWidget. In calendar in tool buttons there is a spin box to select the year, setting border to QCalendarWidget is not like setting background color to the other widgets, calendar is widget which has many child i.e component we can set background color to independent component as well. Below is how the calendar with background color on year spin box will look like
In order to do this we will use setStyleSheet method with the QCalendarWidget object, below is the style sheet code
Note : User can do similar action with the year spin box, that can be used with the normal spin box widget
Below is the implementation
Python3 1==
# importing librariesfromPyQt5.QtWidgetsimport*fromPyQt5importQtCore,QtGuifromPyQt5.QtGuiimport*fromPyQt5.QtCoreimport*importsys# QCalendarWidget ClassclassCalendar(QCalendarWidget):# constructordef__init__(self,parent=None):super(Calendar,self).__init__(parent)classWindow(QMainWindow):def__init__(self):super().__init__()# setting titleself.setWindowTitle("Python ")# setting geometryself.setGeometry(100,100,500,400)# calling methodself.UiComponents()# showing all the widgetsself.show()# method for componentsdefUiComponents(self):# creating a QCalendarWidget object# as Calendar class inherits QCalendarWidgetself.calendar=Calendar(self)# setting cursorself.calendar.setCursor(Qt.PointingHandCursor)# setting size of the calendarself.calendar.resize(350,240)# move the calendarself.calendar.move(10,10)# setting stylesheet# adding background color to the calendar's spin boxself.calendar.setStyleSheet("QCalendarWidget QSpinBox""{""background-color : lightgreen;""}")# create pyqt5 appApp=QApplication(sys.argv)# create the instance of our Windowwindow=Window()# start the appsys.exit(App.exec())