📅  最后修改于: 2023-12-03 15:33:51.393000             🧑  作者: Mango
如果你已经使用过 PyQt5 来创建 GUI 应用程序,那么你可能已经知道如何使用 QLineEdit、QPushButton、QLabel 等标准的小部件。在本文中,我们将要了解如何使用复选框控件,并且学习如何更改复选框中间指标的背景颜色。
PyQt5 复选框是一种可以让用户从多个选项中选择一个或多个选项的控件。复选框一般显示为一个方框,在选中的情况下有一个中间标记(一般是一个“✓”号)。
要创建 PyQt5 复选框,你可以使用 QCheckBox 小部件。下面是一个简单的例子,演示如何在 PyQt5 中创建一个复选框。
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QCheckBox
class CheckboxWindow(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
cb = QCheckBox('Checkbox', self)
cb.move(20, 20)
cb.toggle()
self.setGeometry(300, 300, 250, 150)
self.setWindowTitle('Checkbox')
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = CheckboxWindow()
sys.exit(app.exec_())
上面的例子中,我们创建了一个简单的窗口,并且在窗口中添加了一个复选框。复选框的初始状态为选中状态。
默认情况下,PyQt5 复选框的中间指标的背景颜色是透明的。我们可以通过设置样式表来更改中间指标的背景颜色。
下面是一个例子,演示如何更改中间指标的背景颜色为红色。
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QCheckBox
class CheckboxWindow(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
cb = QCheckBox('Checkbox', self)
cb.move(20, 20)
cb.toggle()
cb.setStyleSheet('QCheckBox::indicator { background-color: red; }')
self.setGeometry(300, 300, 250, 150)
self.setWindowTitle('Checkbox')
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = CheckboxWindow()
sys.exit(app.exec_())
上面的例子中,我们使用 setStyleSheet()
方法来设置复选框中间指标的背景颜色为红色。
注意,在使用样式表进行样式修改时,要使用 QCheckBox::indicator 选择器来选择复选框的中间指标。
在本文中,我们了解了如何在 PyQt5 中创建复选框,并且学习了如何使用样式表来更改复选框中间指标的背景颜色。如果你对 PyQt5 复选框感兴趣,那么可以通过 PyQt5 文档来了解更多相关内容。