connect放在单次定时器启动前和启动后的区别,求解答解决思路
connect放在单次定时器启动前和启动后的区别,求解答定义了一个定时器,设置为单次定时器,将定时器与一个槽
connect放在单次定时器启动前和启动后的区别,求解答
定义了一个定时器,设置为单次定时器,将定时器与一个槽函数connect,固定时常后触发。
现在发现一个现象:
1、将connect放在start函数之前,槽函数只执行一次,正常;
2、但是将connect放在start函数之后,槽函数执行了多次,(多次试验测试,发现次数不定)。
求解,为什么啊?
[解决办法]
应用程序的定时器都是由一个衍生多个,定时器的oneshot属性应该不能被实时响应很正常,定时器开启时就会按照默认的循环,具体什么时候能响应oneshot的设置就不一定了
[解决办法]
[解决办法]QTimer
一般情况下 start() 后就开始计时,定时时间到时会发出信号,发信号前后该定时器项在定时器队列中会调整下但不移除,直到 stop() 才会将该定时器项从定时器队列中摘除
可用 qt creator 跟踪看下
onshot 标志设置后,之后的定时到时后,会自动调用 stop() 类似动作