#include "displaytime.h"
#include <QApplication>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
DisplayTime w;
w.show();
return a.exec();
}
方法一:
displaytime.h
#ifndef DISPLAYTIME_H
#define DISPLAYTIME_H
#include <QWidget>
#include <QtGui>
class QLabel;
class DisplayTime : public QWidget
{
Q_OBJECT
public:
DisplayTime(QWidget *parent = 0);
~DisplayTime();
private:
QLabel *timeLabel;
protected:
void timerEvent(QTimerEvent * event);
};
#endif // DISPLAYTIME_H
displaytime.cpp
#include "displaytime.h"
DisplayTime::DisplayTime(QWidget *parent)
: QWidget(parent)
{
timeLabel = new QLabel(this);
timerEvent(0);
startTimer(1000);
timeLabel->show();
}
DisplayTime::~DisplayTime()
{
}
void DisplayTime::timerEvent(QTimerEvent *event)
{
Q_UNUSED(event);
timeLabel->setText(QTime::currentTime().toString("hh:mm:ss"));
}
方法二:
displaytime.h
#ifndef DISPLAYTIME_H
#define DISPLAYTIME_H
#include <QWidget>
#include <QtGui>
class QLabel;
class DisplayTime : public QWidget
{
Q_OBJECT
public:
DisplayTime(QWidget *parent = 0);
~DisplayTime();
private:
QLabel *timeLabel;
private slots:
void updateTime();
};
#endif // DISPLAYTIME_H
displaytime.cpp
#include "displaytime.h"
DisplayTime::DisplayTime(QWidget *parent)
: QWidget(parent)
{
timeLabel = new QLabel(this);
timeLabel->setGeometry(0, 0, 150, 30);
QTimer *timer = new QTimer(this);
connect(timer, SIGNAL(timeout()),
this, SLOT(updateTime()));
timer->start(1000);
timeLabel->show();
}
DisplayTime::~DisplayTime()
{
}
void DisplayTime::updateTime()
{
timeLabel->setText(QDateTime::currentDateTime().toString("hh:mm:ss"));
}
推荐阅读:
Ubuntu 环境下Gtk与QT编译环境安装与配置
Ubuntu下QT控制台程序无法运行的解决方案以及XTerm的配置方法
Linux下为刚安装好的Qt Creator 创建桌面启动图标
Ubuntu 11.04安装QT Creator 2.5.0