Qt日期与时间
QTime:时间数据类型,仅表示时间,如15:23:13。
QDate:日期数据类型,仅表示日期,如2017-4-5。
QDateTime:日期时间数据类型,表示日期和时间,如2017-03-23 08:12:43。
从系统中读取当前时间的糟函数如下:
# 获取当前日期时间,为三个专用编辑器设置日期时间数据,并转换为字符串QDateTime
# 获取当前时间
QDateTime curDateTime =QDateTime::currentDateTime();
1. 将datetime显示到Qt程序界面
ui->timeEdit->setTime(curDateTime.time());
ui->editTime->setText (curDateTime.toString ("hh:mm: ss11));
ui->dateEdit->setDate(curDateTime.date());
ui->editDate->setText(curDateTime.toString("yyyy-MM-dd"));
ui->dateTimeEdit->setDateTime(curDateTime);
ui->editDateTime->setText(curDateTime.toString("yyyy-MM-dd hh:mm:ss"));
2. ui控件中的dateTime转化为QString
// dateTimeEdit并没有给给出一次性转换成dateTime的格式。需要分别转换date与time.
1. ui->dateTimeEdit->text().date().toString("yyyy-MM-dd");
2. ui->dateTimeEdit->text().time().toString("hh:mm:ss");
# 将字符串转化为QDate
QString str= "2020-11-02 12:24:36";
QDateTime time = QDateTime::fromString(str, "yyyy-MM-dd hh:mm:ss");
# 获取1个月之前的时间
QDateTime currTime=QDateTime::currentDateTime(); //系统当前时间
QDateTime aMonthAgo=currTime.addMonths(-1); //参数是可以为负数的,负数就是获取以前的时间,正数就是获取未来的时间
# 获取一年之前的时间
QDateTime aYearAgo=currTime.addYears(-1);
开启 clendarpopup --- 显示日历组件