QCheckBox类继承自QAbstractButton类,它提供了一组带文本标签的复选框,用户可以选择多个选项。和QPushButton一样,复选框可以显示文本或者图标,其中文本可以通过构造函数或者setText()来设置,图标可以通过setIcon()来设置。在视觉上,QButtonGroup可以把许多复选框组织在一起。
QCheckBox(复选框)和QRadioButton(单选钮)都是选项按钮,它们的区别在于单选钮为多选一,而复选框为多选多。QCheckBox通常被应用于需要用户选择一个或多个的选项的场景中。
只要复选框被选中或者被取消选中,都会发射一个stateChanged信号。除了常用的选中和未选中两种状态,QCheckBox还提供了第三种状态(半选中)来表示“没有变化”。当需要为用户提供一个选中或者未选中复选框的选择时,这种状态是很有用的。如果需要第三种状态,则可以通过setTristate()来使它生效,并使用checkState()来查询当前的切换状态。
QCheckBox类的常用方法如下:
三态复选框有三种状态,如下所示:
应用实例如下:
import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtW