VC中定時器的使用
Settimer是設定一個計時器,當執行的時候,則開始執行計時器Ontimer中的程式碼,Ontimer是計時器所執行的程式碼。
Settimer是設定,Ontimer是響應Settimer訊息的。
KillTimer用於停止計時器。
1.SetTimer函式的用法
1)用WM_TIMER來設定定時器
先請看SetTimer這個API函式的原型:
UINT_PTR SetTimer(
HWND hWnd,//和定時器相關聯的視窗
UINT_PTR nIDEvent,//一個非0的數字標誌這個定時器
UINT uElapse,//指定時間間隔,以毫秒為單位
TIMERPROC lpTimerFunc//一般指定為null
);
當在MFC的工程中表述如下:
UINT_PTR SetTimer(
UINT_PTR nIDEvent,//一個非0的數字標誌這個定時器
UINT uElapse,//指定時間間隔,以毫秒為單位
TIMERPROC lpTimerFunc//一般指定為null
);
2)用法舉例:
SetTimer(1,1000,NULL);
引數解釋:
1:計時器的名稱;
1000:時間間隔,單位是毫秒;
NULL:使用onTime函式。
在每次時間到1s時會觸發WM_TIMER訊息,其訊息響應函式如下:
void CXXX::OnTimer(UINT_PTR nIDEvent)
{
// TODO: 在此新增訊息處理程式程式碼和/或呼叫預設值
// 此處加入如下程式碼就好了:
switch()
{
case 1:
//做該做的事情
//當不需要的時候在此處呼叫KillTimer(1);
break;
default:
break;
}
CDialog::OnTimer(nIDEvent);
}
3)當不需要計時器的時候呼叫KillTimer(nIDEvent);
例如:KillTimer(1);
2.如果我要加入兩個或者兩個以上的 timer怎麼辦?
繼續用SetTimer函式唄,上次的timer的ID是1,這次可以是2,3,4。。。。
SetTimer(2,1000,NULL);
SetTimer(3,500,NULL);
嗯,WINDOWS會協調他們的。當然onTimer函式體也要發生變化,要在函式體內新增每一個timer的處理程式碼:
onTimer(nIDEvent)
{
switch(nIDEvent)
{
case 1:........;
break;
case 2:.......;
break;
case 3:......;
break;
}
}
註腳:如果上述內容幫到了您或者有什麼錯誤,而您又是註冊使用者的話,請不要吝惜自己的滑鼠和鍵盤,點贊或者留言指出,感謝支援!
相關文章
- VC++控制檯程式中使用定時器C++定時器
- Qt中的定時器的使用QT定時器
- spring中定時器的使用Spring定時器
- VC++ 控制檯程式中 四種定時器建立方法C++定時器
- java定時器的使用Java定時器
- java 中定時器Java定時器
- C++定時器的使用C++定時器
- [iOS]各種定時器–最全的定時器使用iOS定時器
- iOS中的3種定時器iOS定時器
- C#中的定時器(二)C#定時器
- Android中的定時器AlarmManagerAndroid定時器
- VC++中STL的使用 (轉)C++
- 5、Angular中的$timeOut定時器Angular定時器
- CADisplayLink 及定時器的使用定時器
- 定時器以及定時器的幾個案例定時器
- 微控制器學習(六)定時器的使用定時器
- 使用Selenium時的瀏覽器設定瀏覽器
- 51模組_定時器與中斷定時器
- Go 的定時器Go定時器
- Spring 定時器的使用—Xml、Annotation、自定義Spring定時器XML
- 直播軟體開發,ScheduledExecutorService定時器的使用定時器
- Spring 定時器的使用---Xml、Annotation、自定義Spring定時器XML
- 多執行緒-定時器的概述和使用執行緒定時器
- 定時器定時器
- Java可自定義中斷定時器的實現Java定時器
- VC顯示虛擬機器CPU被鎖定虛擬機
- 原來定時器中斷是個偽中斷定時器
- javascript定時器(setTimeout和setInterval)的使用詳解JavaScript定時器
- 使用監聽器實現JavaWeb的定時執行JavaWeb
- 非視窗類中使用定時器的方法 (轉)定時器
- .NET中如何實現高精度定時器定時器
- java中SpringBoot定時器註解JavaSpring Boot定時器
- 模型的列表定義中,使用函式時如何定義引數?模型函式
- iOS定時器iOS定時器
- JavaScript定時器JavaScript定時器
- js定時器JS定時器
- JavaScript 定時器JavaScript定時器
- 核心定時器定時器