1. 程式人生 > >VC多定時器的使用及停止開啟定時器的方法

VC多定時器的使用及停止開啟定時器的方法

  • 1.定時啟動的使用

    void 類名::OnInitDialog()
    {
     //加入程式碼
       SetTimer(0, 1000, NULL); 
       SetTimer(1,10000,NULL);
     //其中第一個引數nIDEvent定時器ID,多個定時器時,可以通過該ID判斷是哪個定時器


    //在窗體的時間訊息函式中加入
    2.void 類名::OnTimer(UINT nIDEvent) 
     {
      switch(nIDEvent) //通過nIDEvent值判斷是哪個定時器與上面定義的相統一。
       {
        case 0:
         do1()
         break;
        case 1:
         do2();
         break;    
       }
      }
    說明:vc中的定時器使用與delphi VB不同 Vc中的定時器處理都是用一個訊息過程處理的只是通過判斷定時器的Id號區分要的的事情!

    3.停止定時器的使用
     KillTimer(0);  注:如果想執行到某個SetTimer處定時,定時完了就殺死,在那個定時器處理函式OnTimer()對應的case裡殺死,這樣就不會自動激活了,而是達到執行到那個定時器才被啟用的效果。

  • 比如:case 0:

  •    {  ........//處理函式

  •      KillTimer(0);

  •      break;

  •   }
    4.重新啟動定時器
     SetTimer(0,1000,NULL);