VB的时钟精度不高,而且在系统负荷很大的情况下延迟更大.为了减少时钟的延迟以及提高时钟的精度,笔者搜集到以下方法:
1:利用其他控件的事件去替代主时钟工作
如利用一个文本框的change事件去工作,主时钟的代码为:
Private Sub Tmr_Main_Timer()
Txt_Helper.Text = IIf(Timer1Helper.Text = "", " ", "")
End Sub
文本框change事件的代码为:
Private Sub Txt_Helper_Change()
'Do Something You Want
End Sub
2:利用两个API函数QueryPerformanceFrequency和QueryPerformanceCounter实现
使用方法如下:
Type LARGE_INTEGER
lowpart As Long
highpart As Long
End Type
&nbs
1:利用其他控件的事件去替代主时钟工作
如利用一个文本框的change事件去工作,主时钟的代码为:
Private Sub Tmr_Main_Timer()
Txt_Helper.Text = IIf(Timer1Helper.Text = "", " ", "")
End Sub
文本框change事件的代码为:
Private Sub Txt_Helper_Change()
'Do Something You Want
End Sub
2:利用两个API函数QueryPerformanceFrequency和QueryPerformanceCounter实现
使用方法如下:
Type LARGE_INTEGER
lowpart As Long
highpart As Long
End Type
&nbs

VB时钟的精度和稳定性在高负载下会受到影响。本文介绍了三种优化方法:1) 利用文本框change事件替代主时钟;2) 使用API函数QueryPerformanceFrequency和QueryPerformanceCounter;3) 应用timeSetEvent实现独立线程的高精度计时。
最低0.47元/天 解锁文章
1681

被折叠的 条评论
为什么被折叠?



