ゲームにいくつかの難易度設定があります。一度にアクティブにできるオプションは 1 つだけであるため、たとえばオプション「Easy」についてはそうしました。
//Uncheck all other difficulty options
if(ui->actionMedium->isChecked())
{
ui->actionMedium->setChecked(false);
}
if(ui->actionHard->isChecked())
{
ui->actionHard->setChecked(false);
}
問題は、既にチェックされているチェックボックスをクリックすると、チェックボックスがオフになることです。OK、それがチェックボックスの通常の動作なので、追加しました
//check if its alreay checked
if(ui->actionEasy->isChecked())
{
ui->actionEasy->setChecked(true);
}
しかし、これは機能しません。その理由がわかりません。
別の方法として、ラジオボタンをグループ化することもできますが、コードが機能しない理由を理解したいと思います。