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轉(zhuǎn)化為QDateTime:
QString str= "2020-11-02 12:24:36"; QDateTime time = QDateTime::fromString(str, "yyyy-MM-dd hh:mm:ss");
字符串轉(zhuǎn)換為 QTime、QDate 、 QDateTime 類型,使用靜態(tài)函數(shù) QDateTime::fromString(),其函數(shù)原型為: QDateTime QDateTime::fromString(const QString &string, const QString &format)
第 1 個參數(shù) string 是日期時間字符串形式,第 2 個參數(shù) format 是字符串表示的格式
當前時間轉(zhuǎn)化為時間戳:
QDateTime time= QDateTime::currentDateTime();//獲取系統(tǒng)當前的時間 uint nTime = time.toTime_t();
時間戳轉(zhuǎn)化為當前時間:
//這個方法是靜態(tài)的 QDateTime time = QDateTime::fromTime_t(timeT);
二、 qt中用于時間、日期編輯和顯示的界面組件
- QTimeEdit:編輯和顯示時間的組件。
- QDateEdit:編輯和顯示日期的組件。
- QDateTimeEdit:編輯和顯示日期時間的組件。
- QCalendarWidget:用日歷形式選擇日期的組件。
//獲取當前日期時間,設置日期時間數(shù)據(jù),并轉(zhuǎn)換為字符串 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ù)時分為多個段,單擊編輯框右側(cè)的上下按鈕可修改當前段的值。如輸入光標在YearSection段,就修改“年”的值。
- currentSectionIndex:用序號表示的輸入光標所在的段。
- calendarPopup:是否允許彈出一個日歷選擇框。當取值為 true 時,右側(cè)的輸入按鈕變成與 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獲取當前時間內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Linux下用Valgrind做檢查(防止內(nèi)存泄露)
Valgrind是一款基于模擬linux下的程序調(diào)試器和剖析器的軟件套件,可以運行于x86, amd64和ppc32架構上。valgrind包含一個核心,它提供一個虛擬的CPU運行程序,還有一系列的工具,它們完成調(diào)試,剖析和一些類似的任務2014-01-01