PyQt5 – 设置复选框被按下时的皮肤

  • Post category:Python

下面是详细讲解Python PyQt5 中如何设置复选框被按下时的皮肤的完整使用攻略。

步骤一:安装PyQt5库

在开始之前,需要确保已经安装了 PyQt5 库,如果没有,请使用以下命令进行安装。

pip install PyQt5

步骤二:创建复选框控件及设置

在使用复选框时,需要先创建一个复选框控件,然后设置它的样式以及按下时的皮肤。

代码示例1:创建一个复选框控件并设置样式

from PyQt5.QtWidgets import QApplication, QWidget, QCheckBox

class App(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        # 创建复选框控件
        checkbox = QCheckBox('选项一', self)
        checkbox.move(20, 20)
        checkbox.resize(320, 40)
        # 设置复选框样式
        checkbox.setStyleSheet('QCheckBox { font-size: 20px; }')
        self.show()

在上述代码中,我们首先导入了 PyQt5 中必要的组件,然后创建了一个名为 App 的窗口应用程序,并在其中添加了一个复选框控件。

接着,我们对复选框控件进行了样式设置,通过 setStyleSheet 方法设置了复选框文本的字体大小为 20 像素。

代码示例2:设置复选框被按下时的皮肤

checkbox.setStyleSheet('QCheckBox::indicator:checked { background-color: red; border: 2px solid #333 ;}')

在上述代码中,我们继续使用 setStyleSheet 方法,并增加了一个 ::indicator:checked 伪状态,表示设置复选框被按下时的状态。

当复选框被按下时,将背景颜色设置为红色,边框线宽为 2 像素,颜色为深灰色。

步骤三:完整代码示例

下面是完整的代码示例:

from PyQt5.QtWidgets import QApplication, QWidget, QCheckBox

class App(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        # 创建复选框控件
        checkbox = QCheckBox('选项一', self)
        checkbox.move(20, 20)
        checkbox.resize(320, 40)
        # 设置复选框样式
        checkbox.setStyleSheet('QCheckBox { font-size: 20px; }')
        # 设置复选框被按下时的样式
        checkbox.setStyleSheet('QCheckBox::indicator:checked { background-color: red; border: 2px solid #333 ;}')
        self.show()

if __name__ == '__main__':
    app = QApplication([])
    ex = App()
    app.exec_()

在以上代码中,我们首先创建了一个名为 App 的窗口应用程序,然后创建了一个复选框控件并对其进行了样式和皮肤的设置。

最后,通过 app.exec_() 方法启动应用程序,运行以上代码即可看到复选框被按下时的效果。

希望这篇攻略对您有所帮助!