qt獲取當前時間(QDateTime、QTime、QDate)
一、時間日期類型:
- QTime:時間數(shù)據(jù)類型,表示時間,如:14:23:13。
- QDate:日期數(shù)據(jù)類型,表示日期,如:2020-4-5。
- QDateTime:日期時間數(shù)據(jù)類型,表示日期和時間,如:2020-03-23 08:12:43。
QDateTime:
QDateTime dateTime= QDateTime::currentDateTime();//獲取系統(tǒng)當前的時間
QString str = dateTime .toString("yyyy-MM-dd hh:mm:ss");//格式化時間QString轉化為QDateTime:
QString str= "2020-11-02 12:24:36"; QDateTime time = QDateTime::fromString(str, "yyyy-MM-dd hh:mm:ss");
字符串轉換為 QTime、QDate 、 QDateTime 類型,使用靜態(tài)函數(shù) QDateTime::fromString(),其函數(shù)原型為: QDateTime QDateTime::fromString(const QString &string, const QString &format)
第 1 個參數(shù) string 是日期時間字符串形式,第 2 個參數(shù) format 是字符串表示的格式
當前時間轉化為時間戳:
QDateTime time= QDateTime::currentDateTime();//獲取系統(tǒng)當前的時間 uint nTime = time.toTime_t();
時間戳轉化為當前時間:
//這個方法是靜態(tài)的 QDateTime time = QDateTime::fromTime_t(timeT);
二、 qt中用于時間、日期編輯和顯示的界面組件
- QTimeEdit:編輯和顯示時間的組件。
- QDateEdit:編輯和顯示日期的組件。
- QDateTimeEdit:編輯和顯示日期時間的組件。
- QCalendarWidget:用日歷形式選擇日期的組件。
//獲取當前日期時間,設置日期時間數(shù)據(jù),并轉換為字符串
QDateTime curDateTime=QDateTime::currentDateTime();
ui->timeEdit->setTime(curDateTime.time());
ui->editTime->setText (curDateTime.toString ("hh:mm:ss));
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"))QDateEdit 和 QTimeEdit 都是從 QDateTimeEdit 繼承的,實現(xiàn)日期或時間的特定顯示功能。實際上,QDateEdit 和 QTimeEdit 的顯示功能都可以通過 QDateTimeEdit 實現(xiàn),只需設置屬性即可。
QDateTimeEdit 類的主要屬性如下:
- datetime:日期時間。
- date:日期,設置 datetime 時會自動改變 date,同樣,設置 date 時,也會自動改變 datetime 里的日期。
- time:時間,設置 datetime 時會自動改變 time,同樣,設置 time 時,也會自動改變 datetime 里的時間。
- maximumDateTime、 minimumDateTime:最大、最小日期時間。
- maximumDate、minimumDate:最大、最小日期。
- maximumTime、minimumTime:最大、最小時間。
- currentSection:當前輸入光標所在的時間日期數(shù)據(jù)段,是枚舉類型 QDateTimeEdit::Section。QDateTimeEdit 顯示日期時間數(shù)據(jù)時分為多個段,單擊編輯框右側的上下按鈕可修改當前段的值。如輸入光標在YearSection段,就修改“年”的值。
- currentSectionIndex:用序號表示的輸入光標所在的段。
- calendarPopup:是否允許彈出一個日歷選擇框。當取值為 true 時,右側的輸入按鈕變成與 QComboBox 類似的下拉按鈕,單擊按鈕時出現(xiàn)一個日歷選擇框,用于在日歷上選擇日期。對于 QTimeEdit,此屬性無效。
- displayFormat:顯示格式,日期時間數(shù)據(jù)的顯示格式,例如設置為“yyyy-MM-dd HH:mm:ss”,一個日期時間數(shù)據(jù)就顯示為“2020-11-02 08:23:46”。
用于時間日期顯示的格式化字符說明:
| 表達式 | 說明 |
|---|---|
| d | 天,不補零顯示,1-31 |
| dd | 天,補零顯示,01-31 |
| M | 月,不補零顯示,1-12 |
| MM | 月,補零顯示,01-12 |
| yy | 年,兩位顯示,00-99 |
| yyyy | 年,4位數(shù)字顯示,如 2020 |
| h | 小時,不補零,0-23 或 1-12 (如果顯示 AM/PM) |
| hh | 小時,補零2位顯示,00-23 或 01-12 (如果顯示 AM/PM) |
| H | 小時,不補零,0-23 (即使顯示 AM/PM) |
| HH | 小時,補零顯示,00-23 (即使顯示 AM/PM) |
| m | 分鐘,不補零,0-59 |
| mm | 分鐘,補零顯示,00-59 |
| z | 毫秒,不補零,0-999 |
| zzz | 毫秒,補零 3 位顯示,000-999 |
| AP或A | 使用 AM/pm 顯示 |
| ap或a | 使用 am/pm 顯示 |
到此這篇關于qt獲取當前時間(QDateTime、QTime、QDate)的文章就介紹到這了,更多相關qt獲取當前時間內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

