计时计数问题,SetTimer,GetTickCount,请进来看看
我做一个计时小程序
用SetTimer精度太低,在OnTimer中每获得一个消息+1计数,很不精确。
用GetTickCount的话可以获得计算机启动到当前时间的ms数,但是怎么样使得在界面上点下button后,TEXT里面像秒表一下计数,每毫秒+1;GetTickCount有没有像SetTimer那样会发消息的。
问题点数:20、回复次数:5Top
1 楼crearo(铜板)回复于 2006-12-01 13:32:53 得分 0
GetTickCount满足时间后,自己发个消息,然后响应Top
2 楼high2003376320(年少但不轻狂)回复于 2006-12-01 13:32:57 得分 0
用SetTimer精度太低,在OnTimer中每获得一个消息+1计数,很不精确。
晕Top
3 楼high2003376320(年少但不轻狂)回复于 2006-12-01 13:33:52 得分 0
精确到毫秒还不够????/Top
4 楼mrxwh(大徐)回复于 2006-12-01 13:46:43 得分 0
在按下按钮后,获取消息,循环检查是否达到间隔要求,进行对应的处理
MSG msg;
...
while(PeekMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
;检查时间是否到达规定间隔 处理事件
}
Top
5 楼ERic_ysl(年轻是用来透支的!)回复于 2006-12-01 14:10:17 得分 0
to:high2003376320(年少但不轻狂)
SetTimer虽说是毫秒级的,但是误差很大,而且Windows的消息机制也会使得计时误差加大
to:crearo(铜板) & mrxwh(大徐) ( )
给自己发消息--还不会,能不能写个例子给我参照一下,谢谢!Top





