//复选框互斥
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);
}
}
本文介绍了如何在Qt中使用QButtonGroup和QCheckBox实现复选框的互斥选择,并提供了一个取消互斥的方法,通过QObject的信号与槽机制进行连接。
531

被折叠的 条评论
为什么被折叠?



