1. QCheckBox常用方法

2. 复选框三种状态Qt.CheckState.枚举

3. 示例代码
import sys
from PyQt6.QtCore import Qt
from PyQt6.QtWidgets import QWidget, QCheckBox, QApplication, QHBoxLayout
class MainWidget(QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle("Check Button")
self.setGeometry(300, 300, 250, 150)
self.checkBox1 = QCheckBox("&1-复选框")
self.checkBox1.setChecked(True)
self.checkBox1.stateChanged.connect(lambda: self.btnState(self.checkBox1))
self.checkBox2 = QCheckBox("&2-复选框")
self.checkBox2.stateChanged.connect(lambda: self.btnState(self.checkBox2))
self.checkBox3 = QCheckBox("&3-复选框")
self.checkBox3.setTristate(True)
self.checkBox3.setCheckState(Qt.CheckState.PartiallyChecked)
self.checkBox3.stateChanged.connect(lambda: self.btnState(self.checkBox3))
h_layout = QHBoxLayout()
h_layout.addWidget(self.checkBox1)
h_layout.addWidget(self.checkBox2)
h_layout.addWidget(self.checkBox3)
self.setLayout(h_layout)
def btnState(self,btn):
if btn.isChecked():
print(f"{btn.text()}被选中",str(btn.checkState()))
else:
print(f"{btn.text()}取消选中",str(btn.checkState()))
if __name__ == "__main__":
app = QApplication(sys.argv)
widget = MainWidget()
widget.show()
sys.exit(app.exec())
4. 效果演示
