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 --- 顯示日歷組件