QGroupBox 找到选中的单选按钮
QGroupBox find selected Radio Button
我创建了一个简单的 UI,其中包含一个 QGroupBox
和一堆 QRadioButtons
(准确地说是 32 个),我希望能够找到选定的那个。
我查看了论坛和其他东西,但我找到的答案不起作用,并且有一份参考文档介绍了 QGroupBox
的不存在方法。
鉴于以下代码段,我如何找到所选的 QRadioButton
(如果有)?
QGroupBox* thingGroup = ui->thingGroupBox;
如果你想在 select 其中之一时得到它,你可以使用 toogled 信号,将它连接到某个插槽并使用 sender () 函数并将其转换为 QRadioButton。
*.h
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());
}
}
我创建了一个简单的 UI,其中包含一个 QGroupBox
和一堆 QRadioButtons
(准确地说是 32 个),我希望能够找到选定的那个。
我查看了论坛和其他东西,但我找到的答案不起作用,并且有一份参考文档介绍了 QGroupBox
的不存在方法。
鉴于以下代码段,我如何找到所选的 QRadioButton
(如果有)?
QGroupBox* thingGroup = ui->thingGroupBox;
如果你想在 select 其中之一时得到它,你可以使用 toogled 信号,将它连接到某个插槽并使用 sender () 函数并将其转换为 QRadioButton。
*.h
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());
}
}