1>获取系统时间并格式化输出2
#include<QTime>
#include<QDebug>
#include<QTime>
#include<QDateTime>
qDebug()<<QTime::currentTime().toString("hh:mm:ss");//获取当前 时间
qDebug()<<QTime::currentTime().toString("hh:mm:ss.zzz");//获取当前 时间
qDebug()<<QDate::currentDate().toString("yyyy-MM-dd");//获取当前 日期
qDebug()<<QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss");//获取当前 日期+时间
2>计时(QTime计时不适用于QT6)
QTime t;
t.start();//开始计时
Widget::getnumer(1000);//自定义的一个函数 生成随机数
int end=t.elapsed();//时间经过了多久 返回整型 单位为ms
qDebug()<<end;
3>QTimer 定时器
timer2=new QTimer(this);
timer=new QTimer(this);//timer指针的父窗口是this指针指向的窗口界面。
timer->setTimerType(Qt::PreciseTimer);//精度
connect(ui->pushButton,&QPushButton::clicked,this,[=]()
{
if(timer->isActive())
{
timer->stop();
ui->pushButton->setText("开始");
}
else
{
//该语句不是只运行一次,而是一直运行下去,所以需要一个判断语句来结束
//1s为一个周期不停运作
timer->start(1000);//等效于下面两行代码
// timer->setInterval(1000);
// timer->start();
ui->pushButton->setText("关闭");
}
});
connect(timer,&QTimer::timeout,this,[=]()
{
ui->cuitime->setText(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss.zzz"));
});
//只发射了一次信号
connect(ui->pushButton_3,&QPushButton::clicked,this,[=]()
{
QTimer::singleShot(1000,this,[=]()
{
timer2->start(1000);
ui->cuitime_3->setText(QDateTime::currentDateTime().toString("yyyy-MM-dd HH:mm:ss.zzz"));
});
});