【MFC】定時器的使用(轉)


原文轉自 http://blog.csdn.net/hellozhd/article/details/8213359

 

在對話框中使用定時器:

1.定義定時器

#define TIMER1 1

2.開啟定時器

在需要開啟定時器的地方加入:SetTimer(TIMER1,1000,NULL);//啟動定時器1,定時時間是1秒

3.關閉定時器

在需要關閉的地方加入:KillTimer(TIMER1);  

4.增加定時器的消息響應函數

在類向導中,增加對話框的WM_TIMER消息,產生void CXXXDlg::OnTimer(UINT nIDEvent)函數,

在其中加入需要在定時器中處理的內容 

void CTMSDlg::OnTimer(UINT_PTR nIDEvent)
{
    //重新加載圖片,加載完后關閉定時器
    if (nIDEvent == TIMER1)
    {
        TBMeeting::Algorithms::Get().LoadImage(this, "./images/SettingNormal.png", IDC_PIC_CTRL_SETTING);
        KillTimer(TIMER1);
    }
    CDialogEx::OnTimer(nIDEvent);
}

附:

SetTimer( UINT nIDEvent, UINT nElapse, void (CALLBACK EXPORT*lpfnTimer)(HWND,UINT,UINT,DWORD));
其中:
UINT nIDEvent:定時器的ID,在一個程序中用這個ID來確定是那個定時器發送的消息。
UINT nElapse: 定義刷新時間,即間隔多長時間刷新一次,單位是毫秒。
void (CALLBACK EXPORT* lpfnTimer)( HWND, UINT, UINT, DWORD):回調函數的參數,實現刷新時所做的操作,一般情況下都設為0。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM