首先,要设置定时器。
在init中(或其他的初始化函数里),调用函数
UINT SetTimer(
UINT nIDEvent,//定时器标记,
UINT nElapse,//间隔时间
void ( CALLBACK* lpfnTimer ) (HWND, UINT, UINT, DWORD) = NULL
)
如settimer(1,2000,NULL);
设置定时器1的间隔为2000毫秒。
其次,添加ontimer消息处理函数代码。
void OnTimer(
UINT_PTR nIDEvent
);
在ontimer中的程序在定时器被触发的时候运行。
void OnTimer(
UINT_PTR nIDEvent
)
如果程序中有多个定时器,则他们共用一个ontimer消息处理程序。
在ontimer中,可以通过判断定时器标志(nIDEvent)来区分不同的定时器。
假设设置了三个定时器,标记分别为1,2,3。如
settimer(1,2000,NULL);
settimer(2,3000,NULL);
settimer(3,5000,NULL);
则在ontimer消息处理函数中
void OnTimer(
UINT_PTR nIDEvent
){
switch (nIDEvent)
{
case 1:
//do something
break;
case 2:
//do something
break;
case 3:
//do something
break;
default:
}
}