PyQt5是Python中流行的GUI开发框架,它提供了许多UI组件,包括复选框。要更改复选框中未被选中的指标的背景颜色,可以使用QWidget.setStyle()方法。下面是一个完整的使用攻略:
导入必要的库
首先需要导入必要的Qt和PyQt5库:
from PyQt5.QtWidgets import QWidget, QCheckBox, QVBoxLayout, QApplication
from PyQt5.QtGui import QPalette, QColor
from PyQt5.QtCore import Qt
import sys
创建窗口和布局
接下来需要创建一个QWidget窗口,并使用QVBoxLayout布局管理器将复选框添加到窗口中:
app = QApplication(sys.argv)
window = QWidget()
layout = QVBoxLayout()
window.setLayout(layout)
创建复选框并设置背景颜色
现在将创建一个QCheckBox复选框实例,并设置StyleSheet以更改它未被选中的指标的背景颜色。在这个示例中,将使用紫色作为未被选中项目的背景颜色:
checkbox = QCheckBox('Example Checkbox')
checkbox.setStyleSheet('background-color: purple')
layout.addWidget(checkbox)
显示窗口
最后,只需要显示窗口就可以了:
window.show()
sys.exit(app.exec_())
这样就可以创建并显示带有自定义背景颜色的复选框了。
下面是另一个示例,这次使用连续两个复选框:
checkbox1 = QCheckBox('Example Checkbox 1')
checkbox2 = QCheckBox('Example Checkbox 2')
# 未被选中的指标的背景颜色:深灰色
unchecked_color = QColor(80, 80, 80)
palette = QPalette()
palette.setColor(QPalette.WindowText, Qt.black)
palette.setColor(QPalette.Button, unchecked_color)
palette.setColor(QPalette.ButtonText, Qt.black)
palette.setColor(QPalette.Text, Qt.black)
checkbox1.setPalette(palette)
checkbox2.setPalette(palette)
layout.addWidget(checkbox1)
layout.addWidget(checkbox2)
在这个示例中,使用QPalette设置了复选框未被选中的指标的背景颜色为深灰色。除了窗口文本之外,所有其他颜色都被设置为黑色。