使用了两个计时器,一个用来设置倒计时的时间,比如倒计时30分钟,一个是倒计时的间隔,这里是1s,也就是lcdnumber 一秒变化一次。
主要函数
将秒数转换为时间:
QString ntpClient::secsToTime(int s)
{
int h=0,m=0;
h=s/3600;
s%=3600;
m=s/60;
s%=60;
qDebug()<<"m"<<m;
QString str=QString::number(h)+"时:"+QString::number(m)+"分:"+QString::number(s)+"秒";
return str;
}
1s的定时器:
timer1=new QTimer(this);
timer1->setInterval(1000);//间隔是1s
connect(timer1,&QTimer::timeout,this,[=]()mutable{
if(val>=0)
{
qDebug()<<"倒计时开始";
intVal--;
val--;
ui->lcdNumber->display(secsToTime(val));
}
else
{
timer1->stop();
}
});
本文介绍了一个使用Qt库实现的倒计时功能,通过结合两个计时器,一个用于设定总时间30分钟,另一个每秒更新显示剩余时间。展示了如何将秒数转换为易读的时间格式,并详细讲解了相关代码实现。
1012

被折叠的 条评论
为什么被折叠?



