QTime

来源:互联网 发布:linux远程连接命令 编辑:程序博客网 时间:2024/04/29 23:07

简述:

QTime对象包含一个时钟时间,小数、钟、、和毫秒,使用的是24小时时钟格式;没有am 和pm的概念(而QDateTime有),也无时区或者日光节约时间(夏令时间)(DST)。QTime能获取当前的时间,可测量出消逝的一段时间。


1、常用函数


//公共函数QTime()QTime(int h,int m,int s=0,int ms=0)QTime  addMSecs(int ms)constQTime addSecs ( int s ) constint elapsed () constint hour () constbool isNull () constbool isValid () constint minute () constint msec () constint msecsTo ( const QTime & t ) constint restart ()int second () constint secsTo ( const QTime & t ) constbool setHMS ( int h, int m, int s, int ms = 0 )void start ()QString toString ( const QString & format ) constQString toString ( Qt::DateFormat format = Qt::TextDate ) constbool operator!= ( const QTime & t ) constbool operator< ( const QTime & t ) constbool operator<= ( const QTime & t ) constbool operator== ( const QTime & t ) constbool operator> ( const QTime & t ) constbool operator>= ( const QTime & t ) const//静态公共函数QTime currentTime ()QTime fromString ( const QString & string, Qt::DateFormat format = Qt::TextDate )QTime fromString ( const QString & string, const QString & format )bool isValid ( int h, int m, int s, int ms = 0 )//相关的非成员QDataStream & operator<< ( QDataStream & out, const QTime & time )QDataStream & operator>> ( QDataStream & in, QTime & time )


2、部分函数分析


QTime::QTime ():构建一个空的时间。一个空时间可以是 QTime(0,0,0,0) ,此时 isNull() 返回true,isValid() 返回false

QTime::QTime ( int h, int m,int s = 0, int ms = 0 )

注意:在 [0,23] , m 和 在 [0,59] ms 在 [0,999];

QTime QTime::currentTime() [static] //返回当前时间QTime::isValid(21, 10, 30); // returns trueQTime::isValid(22, 5,  62); // returns falsebool QTime::setHMS ( int h, int m, int s, int ms = 0 )//设置小时,分钟,秒,毫秒QTime time = QTime::fromString("00:710", "hh:ms"); //invalidQTime time = QTime::fromString("1.30", "m.s");// time is00:01:30.000

addSecs(int s) / addMSecs(int ms) 函数, 返回一个 QTime 对象,即返回一个比这个时间晚 s 秒 ms 毫秒的时间。

secsTo(constQTime &t) /msecsTo(const QTime &t) 返回这个时间与时间 t 秒 / 毫秒数。
注意:QTime返回一天之内的时间差,所以 secsTo 范围 -86400 到 86400 msecsTo 范围 -86400000 到 86400000 

QTime n(14, 0, 0);         // n ==14:00:00QTime t;t = n.addSecs(70);         // t ==14:01:10t = n.addSecs(-70);        // t ==13:58:50t = n.addSecs(10 * 60 * 60 + 5);  // t == 00:00:05t = n.addSecs(-15 * 60 * 60);   // t == 23:00:00

void QTime::start () //设置时间为目前的时间。int QTime::restart () //设置这个时间为当前时间。int QTime::elapsed () const //返回已经消逝的ms数,自从上一个时间start()或者restart()被调用。

注意:计数器变成0,当24小时过去了。
警告:如果系统时钟设置已经被改变,自从start()或者restart()被调用,那么结果不可预知。例如当夏令时间开或者关。

QTime 可使用函数 start() , restart() , elapsed() 函数来测量一段消逝的时间。



原创粉丝点击