Windows WM_TIMER消息
2010-11-19 09:53:00| 分类:MFC| 标签:|字号大中小 订阅
Windows定时器是一种周期性的消息产生装置,它会每隔一段指定时间发送一次定时消息WM_TIMER。它是一个很重要的系统消息,当系统所设置的时间到达以后,系统就会自动发送该消息。与该消息联系密切的函数是SetTimer(),它设置一个系统时钟,当设置的时间到时,系统产生WM_TIMER消息。通过对SetTimer()函数的参数进行设置,可以告诉用户哪一个时钟的时间到了。因此,可以将一些周期性的工作放入WM_TIMER的消息处理函数中。
定时器的使用一般遵循下列步骤:
(1)使用SetTimer()函数设置定时器
SetTimer()函数的原型如下:
UINT SetTimer(UINT nIDEvent, UINT nElapse, void (CALLBACK EXPORT*lpfnTimer)(HWND,UINT, UINT, DWORD));
其中,参数nIDEvent为新创建的定时器标识号码(非零),当一个应用程序需要多个定时器时,靠此参数的不同来加以区别;参数nElapse为定时器间隔,以毫秒为单位,当由该参数规定的时间到后,系统发送WM_TIMER消息;参数lpfnTimer为指定处理消息WM_TIMER的函数,通常为NULL时,表示由CWnd对象的OnTimer成员函数来处理该消息,当然也可以超载该函数。