Qt 5 QGroupBox найти выбранный переключатель

Я новичок в Qt и создал простой пользовательский интерфейс, состоящий из QGroupBox с кучей QRadioButtons (32, если быть точным), и я хочу быть в состоянии найти выбранный.

Я смотрел на форумы и прочее, но ответы, которые я нашел, не работают, и одна ссылка на документацию по несуществующему методу QGroupBox,

Учитывая приведенный ниже фрагмент, как я могу найти выбранное QRadioButtonесли есть?

QGroupBox* thingGroup = ui->thingGroupBox;

2

Решение

Если вы хотите получить его при выборе одного из них, вы можете использовать сигнал с переключателем, подключить его к некоторому слоту и использовать функцию sender () и преобразовать его в QRadioButton.

*.час

public slots:
void onToggled(bool checked);

* .cpp

QGroupBox *thingGroup = ui->groupBox;

QVBoxLayout *lay = new QVBoxLayout;

thingGroup->setLayout(lay);

for(int i = 0; i < 32; i++){
QRadioButton *radioButton = new QRadioButton(QString::number(i));
lay->addWidget(radioButton);
connect(radioButton, &QRadioButton::toggled, this, &{your Class}::onToggled);
}

слот:

void {your Class}::onToggled(bool checked)
{
if(checked){
//btn is Checked
QRadioButton *btn = static_cast<QRadioButton *>(sender());
}

}
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]