当我有很多 QCheckBox 被选中后,如何批量全部取消勾选呐?
 
 - 方法一:findChildren函数
 - 方法二:foreach循环
 - 效果展示:
 
 
  
 
方法一:findChildren函数
 
    
    QList<QCheckBox*> checkBoxes = this->findChildren<QCheckBox*>();
    for(QCheckBox* checkBox : checkBoxes) {
        checkBox->setChecked(false);
    }
 
方法二:foreach循环
 
QList<QCheckBox*> checkBoxes;
    checkBoxes << ui->checkBox_21 << ui->checkBox_21<< ui->checkBox_22<< ui->checkBox_23<< ui->checkBox_24
               << ui->checkBox_41<< ui->checkBox_42<< ui->checkBox_43<< ui->checkBox_44<< ui->checkBox_45
               << ui->checkBox_611<< ui->checkBox_612<< ui->checkBox_613<< ui->checkBox_614<< ui->checkBox_615
               << ui->checkBox_616<< ui->checkBox_617<< ui->checkBox_711<< ui->checkBox_712<< ui->checkBox_713
               << ui->checkBox_714<< ui->checkBox_715<< ui->checkBox_721<< ui->checkBox_722<< ui->checkBox_723
               << ui->checkBox_724<< ui->checkBox_725<< ui->checkBox_731<< ui->checkBox_732<< ui->checkBox_733;
    foreach(QCheckBox* checkBox, checkBoxes) {
        checkBox->setCheckState(Qt::Unchecked);
    }
 
效果展示:
 
 
     
      图1 全部勾选 
     |  
     
      图2 一键清除 
     |