Вы можете добиться этого эффекта, временно отключив автоэксклюзию для всех своих радиокнопок, сняв флажки и затем снова включив их:
QRadioButton* rbutton1 = new QRadioButton("Option 1", parent);
// ... other code ...
rbutton1->setAutoExclusive(false);
rbutton1->setChecked(false);
rbutton1->setAutoExclusive(true);
Возможно, вы захотите использовать QButtonGroup , чтобы держать вещи в порядке, это позволит вам включать и выключать эксклюзивность для всей группы кнопок вместо того, чтобы выполнять их итерацию самостоятельно:
// where rbuttons are QRadioButtons with appropriate parent widgets
// (QButtonGroup doesn't draw or layout anything, it's just a container class)
QButtonGroup* group = new QButtonGroup(parent);
group->addButton(rbutton1);
group->addButton(rbutton2);
group->addButton(rbutton3);
// ... other code ...
QAbstractButton* checked = group->checkedButton();
if (checked)
{
group->setExclusive(false);
checked->setChecked(false);
group->setExclusive(true);
}
Однако, как уже говорилось в других ответах, вы можете рассмотреть возможность использования флажков вместо этого, поскольку переключатели на самом деле не предназначены для такого рода вещей.