我现在想做一个界面,在界面中通过选择1ms,10ms,100ms,1000ms,来改变spinBox的singleStep的值。
我的想法是用4个RadioButton,分别表示1ms,10ms,100ms,1000ms,当选中其中一个button时,利用信号和槽给出信号,改变singleStep的值。
代码如下,只是一个很简单的测试用的代码,可是发现完全不起作用啊,spinBox的step仍然是我设置的初始值2。
我也做过测试,就是把槽修改为如果radioButton2被选中,关闭窗口,这个测试是对的,选中radioButton2时窗口关闭了,说明radionButton2的信号时给出去了,那为什么spinBox的step没有改变呢?
麻烦哪位大侠帮我看看代码?谢谢
#include "smartdelaywidget.h"
#include "ui_smartdelaywidget.h"
SmartDelayWidget::SmartDelayWidget(QWidget *parent) :
QWidget(parent),
ui(new Ui::SmartDelayWidget)
{
ui->setupUi(this);
connect(ui->radioButton_2, SIGNAL(clicked()), ui->spinBox_1, SLOT(spinBox1_step_change()));
}
SmartDelayWidget::~SmartDelayWidget()
{
delete ui;
}
void SmartDelayWidget::spinBox1_step_change()
{
ui->spinBox_1->setSingleStep(10);
}