界面由3个radiobutton,之间可互斥也可以对单个进行点击一次选中再点击一次不选中,下面是我自己实现的代码,但是有点问题,初次启动程序时,只有第一个radio是可以正常点击的,2和3第一次点击是不行的,再点击就正常了
初始化时ui->radioButton_box1->setchecked(true);
connect(ui->radioButton_box1,SIGNAL(clicked()),this,SLOT(showState()));
connect(ui->radioButton_box2,SIGNAL(clicked()),this,SLOT(showState()));
connect(ui->radioButton_box3,SIGNAL(clicked()),this,SLOT(showState()));
void MainWindow::showState()
{
selectedButton = qobject_cast<QRadioButton*>(sender());
if (selectedButton->isChecked())
{
selectedButton->setCheckable(false);
}else{
selectedButton->setCheckable(true);
selectedButton->setChecked(true);
}
}