为了实现给控制器按周期发送控制指令,利用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进行判断是哪一个定时器。

posted on 2018-11-01 10:46  未完代码  阅读(2170)  评论(0编辑  收藏  举报