3 回答
TA贡献1841条经验 获得超3个赞
你上上面已经用了QObject::connect(spinBox,SIGNAL(valueChanged(int)),slider,SLOT(setValue(int)));它就可以让spinBox和slider建立连接啊,当spinBox的值改变的时候slider的值也会随之改变,其实valueChanged(int)是一个信号函数,你也可以自己发出一个信号,比如你可以让spinBox发出一个valueChanged(int)信号,这样slider的值也会改变,像这样emit spinBox->spinBox(5);你会看到slider的值也改变了。这是因为你让它们建立了连接(用了QObject::connect(spinBox,SIGNAL(valueChanged(int)),slider,SLOT(setValue(int)));)
你自己也可以在头里建立一个信号函数,自己设置信号,用emit发出信号。
TA贡献1859条经验 获得超6个赞
void QSpinBox::valueChanged ( int i ) [signal]
This signal is emitted whenever the spin box's value is changed. The new value's integer value is passed in i.
当spin box的值发生改变时,这个信号将被发送。spin box的最新值将通过参数i传递。
value : int
This property holds the slider's current value.
The slider forces the value to be within the legal range: minimum <= value <= maximum.
Changing the value also changes the sliderPosition.
这个属性为slider的当前值,slider将强制该值在最小值和最大值之间的合法范围内。slider的滑动块位置将与这个值的改变而同步改变。
Access functions:
int value () const
void setValue ( int )
Notifier signal:
通知信号:
void valueChanged ( int value )
设置范围可以使用 setRange ( int min, int max )
设置步调可以使用 setSingleStep ( int )
PS: The Best Way to learn QT is assistant。
- 3 回答
- 0 关注
- 138 浏览
添加回答
举报