6.创建定时器刷新系统时间

创建定时器刷新系统时间

1、定义定时器成员变量

widget.h

class Widget : public QWidget
{
private:
	 QTimer *timerOneSend;//定义一个1秒刷新
	 QString currentDateString;//当前时间字符串
}

2、创建定时器

widget.cpp

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
	timerOneSend = new QTimer(this);
    connect(timerOneSend,&QTimer::timeout,[=](){
        sysTimeSecend();
    });
	timerOneSend->start(1000);   
}
//定时器1秒刷新
void Widget::sysTimeSecend()
{
    getCurrentTime();
    ui->labelCurrentTime->setText(currentDateString);
}
//获取系统当前时间
void Widget::getCurrentTime()
{
    QDateTime dateTime = QDateTime::currentDateTime();
    QDate date = dateTime.date();
    int year = date.year();
    int month = date.month();
    int day = date.day();
    QTime time = dateTime.time();
    int hour = time.hour();
    int minute = time.minute();
    int second = time.second();

    currentDateString = QString("%1-%2-%3 %4:%5:%6")
            .arg(year,2,10,QChar('0'))
            .arg(month,2,10,QChar('0'))
            .arg(day,2,10,QChar('0'))
            .arg(hour,2,10,QChar('0'))
            .arg(minute,2,10,QChar('0'))
            .arg(second,2,10,QChar('0'));
}
posted @ 2025-05-09 11:52  站着说话不腰疼  阅读(17)  评论(0)    收藏  举报