Qt——Qtimer类定时器

dialog.h:

 

#ifndef DIALOG_H
#define DIALOG_H
 
#include <QDialog>
#include<QTimer>
#include<QLCDNumber>
 
class Dialog : public QDialog
{
    Q_OBJECT
public slots:
    void onTimerout();
public:
    Dialog(QWidget *parent = 0);
    ~Dialog();
    private:
    QLCDNumber *lcd;
    QTimer *timer;
 
};
 
#endif // DIALOG_H
 

 

 

 

dialog.cpp:

#include "dialog.h"
#include<QTime>
#include<QVBoxLayout>
 
 
 
Dialog::Dialog(QWidget *parent)
    : QDialog(parent)
{
    lcd=new QLCDNumber();
    lcd->setDigitCount(10);
    lcd->setMode(QLCDNumber::Dec);
    lcd->setSegmentStyle(QLCDNumber::Flat);
 
    timer=new QTimer();
    timer->setInterval(1000);
    timer->start();
    QVBoxLayout *layout = new QVBoxLayout();
    layout->addWidget(lcd);
    connect(timer,SIGNAL(timeout()),this,SLOT(onTimerout()));
    this->setLayout(layout);
    this->resize(800,400);
    this->setWindowTitle("LCD时钟");
 
 
 
}
 
Dialog::~Dialog()
{
 
}
void Dialog::onTimerout()
{
QTime time=QTime::currentTime();
lcd->display(time.toString("hh:mm:ss"));
}
 

相关文章: