En este artículo, veremos cómo configurar el color de la casilla de verificación cuando se presiona mientras se encuentra en el estado intermedio. De forma predeterminada, no se establece ningún color presionado en la parte de la etiqueta de la casilla de verificación, aunque el indicador de forma predeterminada tiene un color de fondo azul claro cuando se presiona. El estado intermedio es un estado entre el estado marcado y no marcado, es el tercer estado que se crea con la ayuda del setTristate
método.
Para agregar color de fondo a la casilla de verificación cuando se presiona desde el estado intermedio (indeterminado), tenemos que editar el código de la hoja de estilo que se usa con el objeto de la casilla de verificación. A continuación se muestra el código de la hoja de estilo.
QCheckBox::indeterminate:pressed { background-color : cyan; }
A continuación se muestra la implementación.
# importing libraries from PyQt5.QtWidgets import * from PyQt5 import QtCore, QtGui from PyQt5.QtGui import * from PyQt5.QtCore import * import sys class Window(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 def UiComponents(self): # creating the check-box checkbox = QCheckBox('Geek ?', self) # setting tristate check box checkbox.setTristate(True) # setting geometry of check box checkbox.setGeometry(200, 150, 100, 30) # adding background color to the pressed check box label part # when it is in intermediate state checkbox.setStyleSheet("QCheckBox:indeterminate:pressed" "{" "background-color : cyan;" "}") # create pyqt5 app App = QApplication(sys.argv) # create the instance of our Window window = Window() # start the app sys.exit(App.exec())
Producción :
Publicación traducida automáticamente
Artículo escrito por rakshitarora y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA