qt 利用QTimer定时器和QLabel显示系统时间,将标签字体设置成16像素高,标签背景设置 30

 我来答
kkkwing
2018-01-09 · TA获得超过1221个赞
知道小有建树答主
回答量:267
采纳率:90%
帮助的人:258万
展开全部


主要代码如下,其他的根据需要自己调整吧。

qlabelsample.h文件

#ifndef QLABELSAMPLE_H
#define QLABELSAMPLE_H

#include <QDialog>
#include <QTimer>
#include <QDateTime>

namespace Ui {
class QLabelSample;
}

class QLabelSample : public QDialog
{
    Q_OBJECT

public:
    explicit QLabelSample(QWidget *parent = 0);
    ~QLabelSample();

private slots:
    void updateLabelTime(void);

private:
    Ui::QLabelSample *ui;
    QTimer m_timer;
};

#endif // QLABELSAMPLE_H

qlabelsample.cpp文件

#include "qlabelsample.h"
#include "ui_qlabelsample.h"

QLabelSample::QLabelSample(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::QLabelSample),
    m_timer(this)
{
    ui->setupUi(this);

    QFont SimSunFont("SimSun", 16);
    ui->label->setFont(SimSunFont);
    ui->label->setStyleSheet("color:blue; background-color:red");

    m_timer.setTimerType(Qt::PreciseTimer);
    connect(&m_timer, SIGNAL(timeout()), this, SLOT(updateLabelTime()));
    m_timer.start(100);
}

QLabelSample::~QLabelSample()
{
    delete ui;
}

void QLabelSample::updateLabelTime(void)
{
    ui->label->setText(QDateTime::currentDateTime().toString(Qt::DefaultLocaleLongDate));
}
追问

按照你的程序运行出现这个怎么办啊求大大指点

追答

我用的QDialog做的基类,另外图片里没看到我给的两个文件啊……

提示MainWindow没有定义,和这代码没关系啊。

给你整个工程吧,多少自学一点吧,先把建一个新工程显示个Helloworld之类的搞定啊。

https://raw.githubusercontent.com/Zalafina/swf_test/master/temp/QLabelSample.zip
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
?>

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式