//复选框互斥
QButtonGroup *group = new QButtonGroup(this);
group->addButton(this->ui->checkBox_start_dock,1);
group->addButton(this->ui->checkBox_stop_task,2);
group->addButton(this->ui->checkBox_stop_task_4,3);
group->addButton(this->ui->checkBox_send_dbs,4);
若要再次点击取消选择,可通过“取消互斥-设置状态-互斥”实现。
connect(this->ui->checkBox_start_dock,&QCheckBox::pressed,this,[=](){
exclusive(this->ui->checkBox_start_dock,group);});
void MainWindow::exclusive(QCheckBox *box,QButtonGroup *group)
{
box->setCheckable(true);
if(box->isChecked()){
group->setExclusive(false);
box->setCheckable(false);
group->setExclusive(true);
}
}