3

我有 3 个单选按钮和一个旋转框。每个单选按钮都应该将 spinboxes 值分别更改为英寸、英尺或米。我该怎么做?我必须知道哪个单选按钮最后是活动的,对吗?有人可以给我一些示例代码吗?

4

1 回答 1

3

单选按钮和复选框将其状态作为值保存,并将其公开给您的用户。您可以调用isChecked()来了解您的成员变量单选按钮的状态。就像是

void some_button_hit(bool checked)
{
    if (inches.isChecked()) {...}
    else if (feet.isChecked()) {...}
    else if (meters.isChecked()) {...}
}

并“连接”从其中任何一个切换的事件。这通常在初始化时使用表单编辑器或通过连接完成。

使用表单编辑器,右键单击单选按钮,然后按照 goto slot... 编辑器构建并连接事件处理程序:

void GroupBox::on_feet_toggled(bool checked)
{
    ui->label->setText("feet");
}
void GroupBox::on_inches_toggled(bool checked)
{
    ui->label->setText("inches");
}
void GroupBox::on_meters_toggled(bool checked)
{
    ui->label->setText("meters");
}
于 2012-06-10T20:25:15.860 回答