QT 获取系统时间 日期

QT 专栏收录该内容
10 篇文章 0 订阅

今天学习了QT获取系统当前时间,日期
效果:左部分读取系统时间日期,右部分以字符串显示
在这里插入图片描述

1.首先在ui放置 PushButton,objectName更名为btnGetTime
Label:时间、日期、日期时间、字符串显示
TimeEdit控件放置时间; DateEdit控件放置日期;Date/Time Edit控件放置日期时间
2.右半部分放置三个LineEdit(setText才能使用)
3.右击按钮控件选择Go to slot,选择clicked(),系统会自动在mainwindow.cpp中生成void MainWindow::on_btnGetTime_clicked()函数
下面是函数体部分

void MainWindow::on_btnGetTime_clicked()
{
    //获取当前日期时间,为三个专用编辑器设置日期时间数据,并转换为字符串
    QDateTime curDataTime=QDateTime::currentDateTime();
    ui->timeEdit->setTime(curDataTime.time());//timeEdit时间控件名
    ui->dateEdit->setDate(curDataTime.date());//dateEdit日期控件名
    ui->dateTimeEdit->setDateTime(curDataTime);//dateTimeEdit日期时间控件名
    //转换为字符串
    ui->EditTime->setText(curDataTime.toString("hh:mm:ss"));//EditTime: QLineEdit
    ui->EditDate->setText(curDataTime.toString("yyyy-MM-dd"));//EditDate: QLineEdit
    ui->EditdateTime->setText(curDataTime.toString("yyyy-MM-dd hh:mm:ss"));//EditdateTime: QLineEdit
}

点击 获取当前时间,则自动显示
在这里插入图片描述
问题:如何实时显示当前系统时间?
答:需要用到QTimer类
效果
在这里插入图片描述
1.设置一个QLabel,命名为update

2代码

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    QTimer *timer=new QTimer(this);
    connect(timer,SIGNAL(timeout()),this,SLOT(timerUpdate()));
    timer->start(1000);//每次发射timeout信号的时间为1秒
    //函数原型 void QTimer::start(int msec) msec毫秒
}

函数体

void MainWindow::timerUpdate(void)
{
    QDateTime time = QDateTime::currentDateTime();
    QString str = time.toString("yyyy-MM-dd hh:mm:ss");//转换成字符串
   // QString str = time.toString("yyyy-MM-dd hh:mm:ss dddd");//显示星期
    ui->update->setText(str);
}

  • 2
    点赞
  • 0
    评论
  • 7
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 像素格子 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值