c++ builder定时器不准确

时间:2022-11-28 23:30:59
早就听说c++ builder下定时器50ms定时间隔定时不准,但是我的定时间隔设的是63ms,但是还是定时不准。哪位高人有解决办法?

6 个解决方案

#1


如果要求精度高的话,可以试试多媒体定时器timeGetDevCaps、timeBeginPeriod、timeSetEvent、timeKillEvent这些函数

#2


TTimer本来就是低精度的.

#3


定时器的误差是比较大,这不仅是CB里才有的问题,在VC,Delphi都存在这个问题,如果想使用高精度定时器,就得自己动手写了

#4


GetTickCount()

#5


我在《c++ builder深度历险》里面看到的多媒体定时器只有程序,请问这个不需要把控件移到窗体上么?只要改下程序就行?

#6


我用c++ builder写了个程序,实现的功能很简单
1)打开文件,导入wav格式的音频文件,同时将一个文本文件导入到数组中。
2)点击多媒体播放器,此时播放导入的音频文件,点击的同时启动定时器
3)逐点在图中显示数组中的数据,定时器间隔是63ms
上面的功能我都实现了,只是使用的定时器定时间隔不准,大家建议用多媒体定时器,可是我对c++ builder不熟,不知道怎么用,哪位高人能帮我改下程序?本人愿意酬谢。

#1


如果要求精度高的话,可以试试多媒体定时器timeGetDevCaps、timeBeginPeriod、timeSetEvent、timeKillEvent这些函数

#2


TTimer本来就是低精度的.

#3


定时器的误差是比较大,这不仅是CB里才有的问题,在VC,Delphi都存在这个问题,如果想使用高精度定时器,就得自己动手写了

#4


GetTickCount()

#5


我在《c++ builder深度历险》里面看到的多媒体定时器只有程序,请问这个不需要把控件移到窗体上么?只要改下程序就行?

#6


我用c++ builder写了个程序,实现的功能很简单
1)打开文件,导入wav格式的音频文件,同时将一个文本文件导入到数组中。
2)点击多媒体播放器,此时播放导入的音频文件,点击的同时启动定时器
3)逐点在图中显示数组中的数据,定时器间隔是63ms
上面的功能我都实现了,只是使用的定时器定时间隔不准,大家建议用多媒体定时器,可是我对c++ builder不熟,不知道怎么用,哪位高人能帮我改下程序?本人愿意酬谢。