QRadioButton的分組有多重方法,如采用組合框、QWidge等,采用QButtonGroup方法來實現分組,好處是不影響QRadioButton在界面上的顯示(組合框分組方式會在界面上出現組合框,要以自己的需要選擇),以及方便ID的設置。
添加頭文件
#include <QButtonGroup> #include <QDebug>
聲明QButtonGroup變量
private: QButtonGroup *groupButton1; QButtonGroup *groupButton2;
在窗體構造函數中初始化QButtonGroup,把相應的QRadioButton添加進來並設置ID
groupButton1=new QButtonGroup(this); groupButton1->addButton(ui->apple_radioButton,0); groupButton1->addButton(ui->banan_radioButton,1); groupButton1->addButton(ui->pear_radioButton,2); ui->apple_radioButton->setChecked(true); //默認選中apple_radioButton groupButton2=new QButtonGroup(this); groupButton2->addButton(ui->potato_radioButton,0); groupButton2->addButton(ui->greenpepper_radioButton,1); groupButton2->addButton(ui->spinach_radioButton,2); ui->greenpepper_radioButton->setChecked(true);
多個QRadioButton控件響應同一個槽函數
QRadioButton的槽函數中,不需要逐個檢查QRadioButton控件狀態,僅僅通過groupButton1->checkedId()來獲知哪一個QRadioButton控件被選中,其返回被選中控件的ID值。