MFC定时器的使用(转)

Posted ~小小鸟~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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。

以上是关于MFC定时器的使用(转)的主要内容,如果未能解决你的问题,请参考以下文章

在一个 MFC 应用程序中,如何使用两个定时器?

MFC timeSetEvent() 定时器的简单使用*

MFC Timer定时器

HTML代码片段

HTML代码片段

MFC 单个SetTimer怎么用啊