Qt中几种延时方法

QTime 
   1: QTime t;
   2: t.start();
   3: while(t.elapsed()<1000)
   4: QCoreApplication::processEvents();

不停地处理事件,以使得程序保持响应。


QElapsedTimer 
这是Qt4.7引入的新的类,和QTime相比,它提供了更快的计算 elapsed 时间的方法。 

   1: QElapsedTimer t;
   2: t.start();
   3: while(t.elapsed()<1000)
   4: QCoreApplication::processEvents();


 
   

QEventLoop  配合QTimer使用局部的 eventLoop 也是一个不错的选择。例子: 

   1: QEventLoop eventloop;
   2: QTimer::singleShot(100, &eventloop, SLOT(quit()));
   3: eventloop.exec();

你可能感兴趣的:(Qt)