• 5477阅读
  • 0回复

[讨论]qradiobutton 点击一次选中再点击一次不选中,如何实现? [复制链接]

上一主题 下一主题
离线good_123
 

只看楼主 倒序阅读 楼主  发表于: 2015-05-20
界面由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);
    }
}
快速回复
限100 字节
 
上一个 下一个