选中复选框不应取消选中

Checked Checkbox should be not uncheckable

本文关键字:取消 复选框      更新时间:2023-10-16

我在游戏中有一些难度设置。因为一次只有一个选项应该是活动的,我做了,例如选项"简单"

//Uncheck all other difficulty options
if(ui->actionMedium->isChecked())
{
    ui->actionMedium->setChecked(false);
}
if(ui->actionHard->isChecked())
{
    ui->actionHard->setChecked(false);
}

现在的问题是,如果我点击一个已经选中的复选框,复选框就会取消选中。好的,这是复选框的正常行为,所以我添加了

//check if its alreay checked
if(ui->actionEasy->isChecked())
{
    ui->actionEasy->setChecked(true);
}

但这并不奏效,我不明白为什么。

作为替代方案,我可以对单选按钮进行分组,但我想弄清楚为什么我的代码不起作用。

如果取消选中复选框actionEasy ui->actionEasy->isChecked() == false,则代码不会选中此复选框。

您应该看看这里,它将教您如何对项目进行分组,并同时使一个可检查项

选中复选框后禁用该复选框。