Qt 是一个跨平台的 C++ 应用程序开发框架,可以用于开发各种类型的应用程序,包括电子时钟。下面是一个简单的 Qt 电子时钟实现的示例代码:
.h头文件
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
class QTimer;
namespace Ui {
class Widget;
}
class Widget : public QWidget
{
Q_OBJECT
public:
explicit Widget(QWidget *parent = 0);
~Widget();
protected slots:
void slotTimeOut();
private:
Ui::Widget *ui;
QTimer *m_timer;
};
#endif // WIDGET_H
.cpp文件
#include "widget.h"
#include "ui_widget.h"
#include <QTimer>
#include <QDateTime>
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
setWindowFlags(Qt::FramelessWindowHint);
m_timer = new QTimer();
m_timer->start(1000);
connect(m_timer,SIGNAL(timeout()),this,SLOT(slotTimeOut()));
}
Widget::~Widget()
{
delete m_timer;
delete ui;
}
void Widget::slotTimeOut()
{
QString dateTimeStr = QStringLiteral("北京时间:") + QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss");
ui->label->setText(dateTimeStr);
}
这个示例代码创建了一个 `QLabel` 对象,用于显示当前时间,然后创建了一个 `QTimer` 对象,每秒钟触发一次 `timeout` 信号。在 `timeout` 信号的槽函数中,获取当前时间并将其转换为字符串格式,然后将其设置为 `QLabel` 的文本。
后续公众号会发布系列教程,更多内容请关注公众号:程序猿学习日记