Qt5 定时器 QTimer 的测试

如果需要在程序中周期性的处理事件,比如每秒种触发一次事件,那么可以使用QTimer。注意 QTimer 和 QTime 是不同的。

本文参照《Qt 定时器Timer使用》的介绍,测试代码成功。新建一个 Widget 程序,一切保持默认,然后修改代码,在UI设计里添加一个Label控件。

代码实现

mainwindow.h

01 #ifndef MAINWINDOW_H
02 #define MAINWINDOW_H
03  
04 #include <QMainWindow>
05  
06 namespace Ui {
07 class MainWindow;
08 }
09  
10 class MainWindow : public QMainWindow
11 {
12     Q_OBJECT
13  
14 public:
15     explicit MainWindow(QWidget *parent = 0);
16     ~MainWindow();
17  
18 private:
19     Ui::MainWindow *ui;
20  
21 private slots:
22     void timerUpDate();
23 };
24  
25 #endif // MAINWINDOW_H

mainwindow.cpp

01 #include "mainwindow.h"
02 #include "ui_mainwindow.h"
03 #include <QtCore>
04  
05 MainWindow::MainWindow(QWidget *parent) :
06     QMainWindow(parent),
07     ui(new Ui::MainWindow)
08 {
09     ui->setupUi(this);
10     QTimer *timer = new QTimer(this);
11     connect(timer,SIGNAL(timeout()),this,SLOT(timerUpDate()));
12     timer->start(1000);
13 }
14  
15 MainWindow::~MainWindow()
16 {
17     delete ui;
18 }
19  
20 void MainWindow::timerUpDate()
21 {
22     QDateTime time = QDateTime::currentDateTime();
23     QString str = time.toString("yyyy-MM-dd hh:mm:ss dddd");
24     ui->label->setText(str);
25  
26 }

运行结果

运行结果,程序每秒更新窗口label文本。

QTimer源码下载

扩展阅读




from: http://davidrobot.com/2014/12/qt5-qtimer.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值