本帖最后由 LLJ 于 2019-10-29 23:08 编辑
应用程序通过使用SetTimer函数创建定时器。新创建的定时器在设置间隔后立即开始计时。应用程序可以使用SetTimer更改定时器的超时值,并可以使用KillTimer函数销毁定时器。为了有效地使用系统资源,应用程序应销毁不再需要的定时器。
每个定时器都有一个唯一的标识符。创建定时器时,应用程序可以指定标识符或让系统创建唯一值。WM_TIMER消息的第一个参数包含发送该消息的定时器的标识符。
如果在调用SetTimer中指定窗口句柄,则应用程序将定时器与该窗口关联。每当定时器的超时值过去时,系统都会向与定时器关联的窗口发送WM_TIMER消息。如果在调用SetTimer时未指定窗口句柄,则创建定时器的应用程序必须监视其消息队列中的WM_TIMER消息并将其分派到相应的窗口。如果指定TimerProc回调函数,则默认窗口过程在处理WM_TIMER时调用回调函数。因此,即使使用TimerProc,也需要在调用线程中分派消息。而不是处理WM_TIMER。
如果需要在定时器经过时收到通知,请使用等待定时器。有关更多信息,请参见Waitable Timer Objects。
Timer.e
(5.2 KB, 下载次数: 207)
|