Qt中多个定时器共享一个槽函数,怎么确定是哪个定时器超时呢?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt中多个定时器共享一个槽函数,怎么确定是哪个定时器超时呢?相关的知识,希望对你有一定的参考价值。
Qt中多个定时器共享一个槽函数,怎么确定是哪个定时器超时呢
参考技术A 超时时间如果不一样的话,它应该是按时间顺序,循环调用的。可以设定标记,第一次是哪一个,第二次调用是哪一个。另外,可以给每个定时器设定不同的槽函数,在槽函数里调用同一个函数。就知道了。
关于Qt在新线程中创建定时器的问题
想在新创建的线程中定义一个100ms的定时器,一旦timeout就调用槽函数发送网
络数据
但成功启动线程后从未跳入槽函数,为什么鸟?
代码大致如下:
// .h文件
#include<QThread>
#include<QTimer>
class NewThread : public QThread
public:
NewThread();
QTimer *m_timer;
private slots:
void sSend();
// .cpp文件
#include ".h"
NewThread::NewThread()
m_timer = new QTimer(this);
NewThread::run()
m_timer->start(100);
connect(m_timer, SIGNAL(timeout()), this, SLOT(sSend()));
while(1)
Sleep(1);
NewThread::sSend()
...
...
返回类型都没有···
以上是关于Qt中多个定时器共享一个槽函数,怎么确定是哪个定时器超时呢?的主要内容,如果未能解决你的问题,请参考以下文章