qt获取当前时间(QDateTime、QTime、QDate).docx
第
qt获取当前时间(QDateTime、QTime、QDate)
目录一、时间日期类型:二、qt中用于时间、日期编辑和显示的界面组件
一、时间日期类型:
QTime:时间数据类型,表示时间,如:14:23:13。QDate:日期数据类型,表示日期,如:2025-4-5。QDateTime:日期时间数据类型,表示日期和时间,如:2025-03-2308:12:43。
QDateTime:
QDateTimedateTime=QDateTime::currentDateTime();//获取系统当前的时间
QStringstr=dateTime.toString(yyyy-MM-ddhh:mm:ss);//格式化时间
QString转化为QDateTime:
QStringstr=2025-11-0212:24:36;
QDateTimetime=QDateTime::fromString(str,yyyy-MM-ddhh:mm:ss);
字符串转换为QTime、QDate、QDateTime类型,使用静态函数QDateTime::fromString(),其函数原型为:QDateTimeQDateTime::fromString(constQStringstring,constQStringformat)
第1个参数string是日期时间字符串形式,第2个参数format是字符串表示的格式
当前时间转化为时间戳:
QDateTimetime=QDateTime::currentDateTime();//获取系统当前的时间
uintnTime=time.toTime_t();
时间戳转化为当前时间:
//这个方法是静态的
QDateTimetime=QDateTime::fromTime_t(timeT);
二、qt中用于时间、日期编辑和显示的界面组件
QTimeEdit:编辑和显示时间的组件。QDateEdit:编辑和显示日期的组件。QDateTimeEdit:编辑和显示日期时间的组件。QCalendarWidget:用日历形式选择日期的组件。
//获取当前日期时间,设置日期时间数据,并转换为字符串
QDateTimecurDateTime=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-ddhh:mm:ss))
QDateEdit和QTimeEdit都是从QDateTimeEdit继承的,实现日期或时间的特定显示功能。实际上,QDateEdit和QTimeEdit的显示功能都可以通过QDateTimeEdit实现,只需设置属性即可。
QDateTimeEdit类的主要属性如下:
datetime:日期时间。date:日期,设置datetime时会自动改变date,同样,设置date时,也会自动改变datetime里的日期。time:时间,设置datetime时会自动改变time,同样,设置time时,也会自动改变datetime里的时间。maximumDateTime、minimumDateTime:最大、最小日期时间。maximumDate、minimumDate:最大、最小日期。maximumTime、minimumTime:最大、最小时间。currentSection:当前输入光标所在的时间日期数据段,是枚举类型QDateTimeEdit::Section。QDateTimeEdit显示日期时间数据时分为多个段,单击编辑框右侧的上下按钮可修改当前段的值。如输入光标在YearSection段,就修改年的值。currentSectionIndex:用序号表示的输入光标所在的段。calendarPopup:是否允许弹出一个日历选择框。当取值为tru