X xfly Unregistered / Unconfirmed GUEST, unregistred user! 2001-04-20 #1 DELPHI 的Timer控件最短的时间间隔实际为 55 毫秒,而通过调用 timeSetEvent 函数<br>可实现以 1 毫秒的时间间隔触发事件,不知哪位高人知道如何使用 timeSetEvent 函数来<br>实现该功能?(不使用第三方控件)
DELPHI 的Timer控件最短的时间间隔实际为 55 毫秒,而通过调用 timeSetEvent 函数<br>可实现以 1 毫秒的时间间隔触发事件,不知哪位高人知道如何使用 timeSetEvent 函数来<br>实现该功能?(不使用第三方控件)
Z zhhc Unregistered / Unconfirmed GUEST, unregistred user! 2001-04-20 #2 timeSetEvent(<br> UINT uDelay, //时间间隔(单位:毫秒)<br> UINT uResolution,//允许误差范围(单位:毫秒)<br> LPTIMECALLBACK lpTimeProc,//回调函数<br> DWORD dwUser,//用户自定义参数<br> UINT fuEvent //定时类型 TIME_ONESHOT 仅执行一次; TIME_PERIODIC 每隔uDelay执行一次 <br> <br> <br>例:<br>procedure MyTimeProc(uID,uMsg,dwUser,dw1,dw2WORD);stdcall;<br>//定时响应函数<br>//uID TimeEvent的ID号,dwUser 与timeSetEvent中的dwUser相同; uMsg,dw1,dw2保留未用<br>begin<br> count:=count+1;<br>end;<br><br>procedure TForm1.Button1Click(Sender: TObject);<br>begin<br> count:=0;<br> timeid:=TimeSetEvent(1,10,MyTimeProc,0,TIME_PERIODIC);<br> if timeid=0 then ShowMessage('set failed');<br>end;<br><br>
timeSetEvent(<br> UINT uDelay, //时间间隔(单位:毫秒)<br> UINT uResolution,//允许误差范围(单位:毫秒)<br> LPTIMECALLBACK lpTimeProc,//回调函数<br> DWORD dwUser,//用户自定义参数<br> UINT fuEvent //定时类型 TIME_ONESHOT 仅执行一次; TIME_PERIODIC 每隔uDelay执行一次 <br> <br> <br>例:<br>procedure MyTimeProc(uID,uMsg,dwUser,dw1,dw2WORD);stdcall;<br>//定时响应函数<br>//uID TimeEvent的ID号,dwUser 与timeSetEvent中的dwUser相同; uMsg,dw1,dw2保留未用<br>begin<br> count:=count+1;<br>end;<br><br>procedure TForm1.Button1Click(Sender: TObject);<br>begin<br> count:=0;<br> timeid:=TimeSetEvent(1,10,MyTimeProc,0,TIME_PERIODIC);<br> if timeid=0 then ShowMessage('set failed');<br>end;<br><br>
S sam_lai Unregistered / Unconfirmed GUEST, unregistred user! 2001-04-20 #3 我觉得应该使用的函数是timeBeginPeriod。
X xfly Unregistered / Unconfirmed GUEST, unregistred user! 2001-04-21 #8 对zhhc的解答,我非常感谢,也非常满意。另外,在提<br>出问题的当天,我自己也摸索出了这个问题的解决方法。(与zhhc<br>的解答基本相同)对于 timeBeginPeriod 函数,我现在基本没有<br>多少了解,不知sam_lai朋友能不能详细说明一下。<br> 我是心理学专业的,经常用 DELPHI 和 BCB 编程序做心理<br>学实验,我做的实验对时间控制要求非常精确, 所以,毫秒级<br>的时间间隔一般情况下可能不必要,但对我来说却是必要的。<br> 其实在 BCB 下我已经能实现这种功能,但在 DELPHI 下却<br>一直实现不了,可能是我对 Object Pascal 语言的掌握还没有<br>到家吧。我是第一次上大富翁论坛,今后还请各位多多指教。
对zhhc的解答,我非常感谢,也非常满意。另外,在提<br>出问题的当天,我自己也摸索出了这个问题的解决方法。(与zhhc<br>的解答基本相同)对于 timeBeginPeriod 函数,我现在基本没有<br>多少了解,不知sam_lai朋友能不能详细说明一下。<br> 我是心理学专业的,经常用 DELPHI 和 BCB 编程序做心理<br>学实验,我做的实验对时间控制要求非常精确, 所以,毫秒级<br>的时间间隔一般情况下可能不必要,但对我来说却是必要的。<br> 其实在 BCB 下我已经能实现这种功能,但在 DELPHI 下却<br>一直实现不了,可能是我对 Object Pascal 语言的掌握还没有<br>到家吧。我是第一次上大富翁论坛,今后还请各位多多指教。