一.描述
a.QCheckBox一般用于给用户提供若干选项中多个选择时的使用
b.控件左侧有一个方框来显示控件被选中。
c.复选框是有三种状态的
二.使用
1.创建
复选框的创建和常规的按钮创建方式是一样的,直接创建就可以了
QCheckBox *m_checkbox1 = new QCheckBox("check_box1",this);
QCheckBox *m_checkbox2 = new QCheckBox("check_box2",this);
QCheckBox *m_checkbox3 = new QCheckBox("check_box3",this);
2、信号量
状态发生改变的时候会发送信号,信号带有int类的参数,描述的是按钮的状态:0——为选中;1——三态的选中;2——正常选中。
m_checkbox1 = new QCheckBox("check_box1",this);
m_checkbox2 = new QCheckBox("check_box2",this);
m_checkbox3 = new QCheckBox("check_box3",this);
m_checkbox1->setGeometry(200,50,100,50);
m_checkbox2->setGeometry(200,120,100,50);
m_checkbox3->setGeometry(200,200,100,50);
connect(m_checkbox1,&QCheckBox::stateChanged,this,&MainWindow::slot_checkbox);
3、三态需要设置如下
m_checkbox1 = new QCheckBox("check_box1",this);
m_checkbox2 = new QCheckBox("check_box2",this);
m_checkbox3 = new QCheckBox("check_box3",this);
m_checkbox1->setGeometry(200,50,100,50);
m_checkbox2->setGeometry(200,120,100,50);
m_checkbox3->setGeometry(200,200,100,50);
m_checkbox1->setTristate(true);
m_checkbox2->setTristate(true);
m_checkbox3->setTristate(true);
connect(m_checkbox1,&QCheckBox::stateChanged,this,&MainWindow::slot_checkbox);
4.状态设置
复选框是有setChecked()这个功能的,但是由于它存在第三种状态,真对存在第三种状态的按钮,可以设置其状态
m_checkbox1.setCheckState(Qt.PartiallyChecked) #设置按钮状态
Qt.Unchecked #未选中
Qt.Checked #选中
Qt.PartiallyChecked #三态选中状态
m_checkbox1.checkState() #获取状态——0,未选中;1-三态选中;2-选中