Qt编程19:Qt时间日期的处理(QTime、QDateTime的使用比较简单)
2014-07-11 12:01
381 查看
QTime、QDateTime的使用比较简单但是通常用的比较多,使用方式类似(以Qtime为例)
QTime类提供了时钟时间功能。
QTime对象包含时钟时间,比如从午夜开始的时、分、秒和毫秒数。
它可以从系统时钟中读取当前的时间并且度量时间的跨度。
它提供比较时间和操作时间的函数,比如加上一定的秒或毫秒。
toString()时间格式的一些属性:
h - 没有前置0的数字的小时(0-23或者如果显示AM/PM时,1-12)
hh - 前置0的数字的小时(00-23或者如果显示AM/PM时,01-12)
m - 没有前置0的数字的分钟(0-59)
mm - 前置0的数字的分钟(00-59)
s - 没有前置0的数字的秒(0-59)
ss - 前置0的数字的秒(00-59)
z - 没有前置0的数字的毫秒(0-999)
zzz - 前置0的数字的毫秒(000-999)
AP - 切换为AM/PM显示。AP将被“AM”或“PM”替换。
ap - 切换为am/pm显示。ap将被“am”或“pm”替换。
例如当前时间显示方式:
“hh:mm:ss.zzz”的结果将是“11:01:09.842”
“h:m:s ap”的结果将是“11:8:90 上午”
常用(我常用)的方法有:
QTime::currentTime(); //获取当前时间,是一个静态函数
计时器函数
void start(); //设置当前时间为开始时间
int restart(); //设置当前时间为开始时间,并返回上次计时经过的时间,单位是毫秒
int elapsed() //获取计时使用的时间,单位是毫秒
//使用
不常用(我不常用)的方法:
QDateTime toString()格式:
日期表达式:
d - 没有前置0的数字的天(1-31)
dd - 前置0的数字的天(01-31)
ddd - 缩写的日名称(Mon-Sun)。使用QDate::shortDayName()。
dddd - 长的日名称(Monday-Sunday)。使用QDate::longDayName()。
M - 没有前置0的数字的月(1-12)
MM - 前置0的数字的月(01-12)
MMM - 缩写的月名称(Jan-Dec)。使用QDate::shortMonthName()。
MMMM - 长的月名称(January-December)。使用QDate::longMonthName()。
yy - 两位数字的年(00-99)
yyyy - 四位数字的年(0000-9999)
时间表达式:
h - 没有前置0的数字的小时(0-23或者如果显示AM/PM时,1-12)
hh - 前置0的数字的小时(00-23或者如果显示AM/PM时,01-12)
m - 没有前置0的数字的分钟(0-59)
mm - 前置0的数字的分钟(00-59)
s - 没有前置0的数字的秒(0-59)
ss - 前置0的数字的秒(00-59)
z - 没有前置0的数字的毫秒(0-999)
zzz - 前置0的数字的毫秒(000-999)
AP - 切换为AM/PM显示。AP将被“AM”或“PM”替换。
ap - 切换为am/pm显示。ap将被“am”或“pm”替换。
QTime类提供了时钟时间功能。
QTime对象包含时钟时间,比如从午夜开始的时、分、秒和毫秒数。
它可以从系统时钟中读取当前的时间并且度量时间的跨度。
它提供比较时间和操作时间的函数,比如加上一定的秒或毫秒。
toString()时间格式的一些属性:
h - 没有前置0的数字的小时(0-23或者如果显示AM/PM时,1-12)
hh - 前置0的数字的小时(00-23或者如果显示AM/PM时,01-12)
m - 没有前置0的数字的分钟(0-59)
mm - 前置0的数字的分钟(00-59)
s - 没有前置0的数字的秒(0-59)
ss - 前置0的数字的秒(00-59)
z - 没有前置0的数字的毫秒(0-999)
zzz - 前置0的数字的毫秒(000-999)
AP - 切换为AM/PM显示。AP将被“AM”或“PM”替换。
ap - 切换为am/pm显示。ap将被“am”或“pm”替换。
例如当前时间显示方式:
“hh:mm:ss.zzz”的结果将是“11:01:09.842”
“h:m:s ap”的结果将是“11:8:90 上午”
常用(我常用)的方法有:
QTime::currentTime(); //获取当前时间,是一个静态函数
计时器函数
void start(); //设置当前时间为开始时间
int restart(); //设置当前时间为开始时间,并返回上次计时经过的时间,单位是毫秒
int elapsed() //获取计时使用的时间,单位是毫秒
//使用
ui->label2->setAutoFillBackground(true); ui->label3->setAutoFillBackground(true); ui->label4->setAutoFillBackground(true); ui->label2->setBackgroundRole(QPalette::Light); ui->label3->setBackgroundRole(QPalette::Dark); ui->label4->setBackgroundRole(QPalette::Shadow); //计时之前的时间 ui->label2->setText(QTime::currentTime().toString("AP hh:mm:ss:zzz")); QTime time; //计时 time.start(); //睡10秒 Sleep(1000*10); ui->label3->setText(QString::number(time.elapsed(),10)); //计时之后的时间 ui->label4->setText(QTime::currentTime().toString("AP h:m:s:z"));
不常用(我不常用)的方法:
bool isNull(); //判断时间是否为空 bool isValid(); //判断时间是否有效 int hour(); //获取小时数 int minute(); //获取分钟数 int second(); //获取秒数 int msec(); //获取毫秒数 bool setHMS(int h, int m, int s, int ms = 0); //设置time QTime addSecs(int secs) const; //将时间增加secs秒 int secsTo(const QTime &t) const; //获取从当期时间到时间t的秒数 QTime addMSecs(int ms) const; //将时间增加ms毫秒 int msecsTo(const QTime &t) const; //获取从当前时间到时间t的毫秒数
QDateTime toString()格式:
日期表达式:
d - 没有前置0的数字的天(1-31)
dd - 前置0的数字的天(01-31)
ddd - 缩写的日名称(Mon-Sun)。使用QDate::shortDayName()。
dddd - 长的日名称(Monday-Sunday)。使用QDate::longDayName()。
M - 没有前置0的数字的月(1-12)
MM - 前置0的数字的月(01-12)
MMM - 缩写的月名称(Jan-Dec)。使用QDate::shortMonthName()。
MMMM - 长的月名称(January-December)。使用QDate::longMonthName()。
yy - 两位数字的年(00-99)
yyyy - 四位数字的年(0000-9999)
时间表达式:
h - 没有前置0的数字的小时(0-23或者如果显示AM/PM时,1-12)
hh - 前置0的数字的小时(00-23或者如果显示AM/PM时,01-12)
m - 没有前置0的数字的分钟(0-59)
mm - 前置0的数字的分钟(00-59)
s - 没有前置0的数字的秒(0-59)
ss - 前置0的数字的秒(00-59)
z - 没有前置0的数字的毫秒(0-999)
zzz - 前置0的数字的毫秒(000-999)
AP - 切换为AM/PM显示。AP将被“AM”或“PM”替换。
ap - 切换为am/pm显示。ap将被“am”或“pm”替换。
相关文章推荐
- QDateTime的之前的时间如何获取和QTime简单使用
- Laravel中日期时间处理包Carbon的简单使用
- 日期及时间处理包 Carbon 在 Laravel 中的简单使用
- 使用Date类处理日期时间
- ACCESS中如何比较日期和时间,使用DateDiff函数
- to_char对日期时间简单的处理
- Qt编程5:使用QXmlStreamReader解析xml(简单应用)
- Windows下日期时间编程简单总结
- 【jQuery日期处理】两个时间大小的比较
- 【转】Java的时间处理(续<Java日期的创建和使用>)
- SAP 使用较频繁的日期时间处理函数总结
- Qt编程22:QTableWidget简单使用
- PowerShell编程之日期时间处理
- 使用友元类处理日期和时间
- 比较简单实用的使用正则三种版本的js去空格处理方法
- 【转帖】C++中对日期和时间的处理的函数简单介绍
- oracle字符串连接和时间格式处理(附加Calendar简单使用)
- SAP 使用较频繁的日期时间处理函数总结
- Qt编程13:比较简单的单例模式
- Qt编程5.1:使用QXmlStreamWriter xml写入(简单应用)