QTimer类提供了定时器信号和单触发定时器,创建一个QTimer,使用start()来开始并且把它的timeout()连接到适当的槽。当这段时间过去了,它将会发射timeout()信号。
QTimer *timer = new QTimer( myObject );
connect( timer, SIGNAL(timeout()), myObject, SLOT(timerDone()) );
timer->start( 2000, TRUE ); // 2秒单触发定时器
不过在程序调用的时候,没有注意,多次与timeout()进行了连接,导致执行多次函数体。后来才发现这个问题。