为了实现给控制器按周期发送控制指令,利用qt中的Qtimer 实现消息的定时发送。
需要进行三步处理:
1.在mainwindow.h文件中对timerEvent进行声明
public virtual void timerEvent(QTimerEvent *event);
2.在mainwindow.cpp文件中定义timerEvent。
void MainWindow::timerEvent(QTimerEvent *event) { cout<<"nihao"<<endl; }
3.在mainwindow.cpp文件的构造函数中调用startTimer,启动timer。
startTimer(100);
经过以上三步,就可以实现每100ms发送一次消息,这里只是一个简单演示,开发过程可以根据实际需要进行修改。
如果有多个定时器,可以通过startTimer(100)返回值(定时器的id)来进行区分。
比如:
在头文件中声明一个int 的变量id,在构造函数中将startTimer的返回值付给id,在timerEvent(QTimerEvent *event)中通过id进行判断是哪一个定时器。