QT--简单的实现一个定时器

43 篇文章 8 订阅
/*-------------头文件------------*/
#define WIDGET_H
 
#include <QObject>//继承的这个
 
class TimeWidget : public QObject
{
    Q_OBJECT
 
public:
    explicit TimeWidget(QObject *parent = 0);
    ~TimeWidget();
void  handleTimeout();  //超时处理函数
virtual void timerEvent( QTimerEvent *event);
private:
 
    int m_nTimerID;
};
 
 
#endif // WIDGET_H

/***-------------源文件*=*****/
 
#include 
  
"widget.h" 
#include <QDebug>
#include <QTimerEvent>
 
TimeWidget::TimeWidget(QObject *parent) :
    QObject(parent)
{
int TIMER_TIMEOUT=3000;
    //开启一个定时器
    m_nTimerID = this->startTimer(TIMER_TIMEOUT); //在这3秒
}
 
TimeWidget::~TimeWidget()
{
 
}
void TimeWidget::handleTimeout()
{
    qDebug()<<"Enter timeout processing function\n";
    killTimer(m_nTimerID);  //关闭定时器
}
 
void TimeWidget::timerEvent(QTimerEvent *event)  //当时间到了就触发这个模块
{
    if(event->timerId() == m_nTimerID){
       handleTimeout();} //处理这个函数
}

主函数 #include "widget.h"
#include <QApplication>
 
 
int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    TimeWidget w; //调用的时候就开始记时
  //  w.startTimer(1000);
 
 
    return a.exec();
}
 


                
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值