专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > QT开发

connect放在单次定时器启动前和启动后的区别,求解答解决思路

发布时间:2010-05-30 21:34:12 文章来源:www.iduyao.cn 采编人员:星星草
connect放在单次定时器启动前和启动后的区别,求解答
定义了一个定时器,设置为单次定时器,将定时器与一个槽函数connect,固定时常后触发。

现在发现一个现象:
1、将connect放在start函数之前,槽函数只执行一次,正常;
2、但是将connect放在start函数之后,槽函数执行了多次,(多次试验测试,发现次数不定)。

求解,为什么啊?

------解决方案--------------------
应用程序的定时器都是由一个衍生多个,定时器的oneshot属性应该不能被实时响应很正常,定时器开启时就会按照默认的循环,具体什么时候能响应oneshot的设置就不一定了
------解决方案--------------------
探讨

在项目中开发遇到的,虽然解决了问题,但是不明白怎么回事。

这也不用贴代码吧,已经说的很清楚了,如你所说,相关代码也只有五六行而已。

------解决方案--------------------
QTimer
一般情况下 start() 后就开始计时,定时时间到时会发出信号,发信号前后该定时器项在定时器队列中会调整下但不移除,直到 stop() 才会将该定时器项从定时器队列中摘除
可用 qt creator 跟踪看下

onshot 标志设置后,之后的定时到时后,会自动调用 stop() 类似动作
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: