Qt使用定時器方法一 定時器事件

2021-06-29 15:26:42 字數 1208 閱讀 4489

首先,qt物件的基類qobject為我們提供了乙個基本的定時器,它是通過定時器事件來觸發的。其步驟如下:

step1:通過函式int qobject::starttimer(int interval)函式來啟動乙個定時器,其中引數interval為時間間隔,其時間單位為毫秒(ms);starttimer()函式的返回型別為int,這個整型數字是定時器的識別符號,用來唯一標識這個此時由starttimer函式開啟的定時器。

當然,我們可以同時開啟多個定時器,並返回不同的定時器識別符號,在事件處理函式中,我們可以利用qtimeevent::timeid()函式來判斷當前事件是由那個定時器觸發的,後面的例子裡面將詳細介紹。

step2:開啟定時器後,在每個時間間隔後會產生乙個qtimeevent事件,並進入事件迴圈等待處理;

step3:當等到qtimeevent事件處理的時候,會呼叫timeevent(qtimeevent*)事件處理函式來處理這個定時器事件;

step4:開啟定時器後,定時器事件會一直發生著,然後我們可以呼叫killtimer(int)函式來結束某個定時器,引數可以指定需要結束的定時器識別符號。

下面做乙個簡單的計時器來說明之。

ticker.h

#include class qlabel;

class qtime;

class ticker : public qwidget

;

ticker.cpp

#include

#include

"ticker.h"

#include

ticker::ticker(qwidget

*parent):

qwidget(parent)

void

ticker::timerevent(qtimerevent

*event)

else

if(number1

>=

60)

}
ticker::~ticker()

Qt事件 定時器事件

qt中的定時器除了實用qtimer之外,凡是繼承了qobject的物件都可以使用定時器事件。1 開啟定時器 int qobject starttimer int interval,qt timertype timertype qt coarsetimer 返回值是定時器id。引數1是時間間隔,可以有...

Qt 中定時器事件

定時器是用來處理週期性事件的一種物件,類似於硬體定時器。例如設定乙個定時器的定時週期為 1000 毫秒,那麼每 1000 毫秒就會發射定時器的 timeout 訊號,在訊號關聯的槽函式裡就可以做相應的處理。定時器例項程式執行示意圖 要使用定時器,需要新增qtimer類 include 1.視窗類新增...

QT定時器事件startTimer

1 開啟乙個定時器 int starttimer int interval,qt timertype timertype qt coarsetimer 功能 啟動乙個定時器事件並返回乙個定時器id 引數說明 interval 定時器的觸發時間 觸發的間隔時間 2 關閉定時器void qobject ...