我做一个计时小程序
用SetTimer精度太低,在OnTimer中每获得一个消息+1计数,很不精确。
用GetTickCount的话可以获得计算机启动到当前时间的ms数,但是怎么样使得在界面上点下button后,TEXT里面像秒表一下计数,每毫秒+1;GetTickCount有没有像SetTimer那样会发消息的。

解决方案 »

  1.   

    GetTickCount满足时间后,自己发个消息,然后响应
      

  2.   

    用SetTimer精度太低,在OnTimer中每获得一个消息+1计数,很不精确。
      

  3.   

    在按下按钮后,获取消息,循环检查是否达到间隔要求,进行对应的处理  MSG msg;
     ...
     while(PeekMessage(&msg, NULL, 0, 0))
     {
      TranslateMessage(&msg);
      DispatchMessage(&msg);    ;检查时间是否到达规定间隔 处理事件 }
      

  4.   

    to:high2003376320(年少但不轻狂) 
    SetTimer虽说是毫秒级的,但是误差很大,而且Windows的消息机制也会使得计时误差加大to:crearo(铜板) & mrxwh(大徐) ( ) 
    给自己发消息--还不会,能不能写个例子给我参照一下,谢谢!