VB timer设置

来源:百度知道 编辑:UC知道 时间:2024/06/14 05:42:30
我想问下大家意见,要怎样设置TIMER才能够把用户输入的时间减去系统时间得出时间差?在网上查了N久,都没有查出来!!!烦人...

不要用timer
系统时间可以用Time函数获得,直接用输入时间去减就行了。

按照题目要求,用Timer控件不大对头吧。我的建议是别用控件,用如下代码。
================
Private Sub Form_Load()
MsgBox "时间差为:" & DateDiff("s", Now, InputBox("请按如下格式输入您的时间:", , Now)) & "秒"
End Sub

有一个专用函数:
DateDiff
用法是:
DateDiff(interval, date1, date2[, firstdayofweek[, firstweekofyear]])

其中interval 参数是字符串型,表示时间差值结果的单位,可取值及其含义如下:
yyyy 年
q 季
m 月
y 一年的日数
d 日
w 一周的日数
ww 周
h 时
n 分钟
s 秒

Declare Function GetTickCount Lib "kernel32" () As Long

用GetTickCount函数得到的毫秒级的时间更精确,语句执行效率也比Timer函数高的多。
设一个Long变量Ti,输入前Ti = GetTickCount,输入后Ti = GetTickCount - Ti,就可以昨到时间差Ti了,时间单位毫秒。

lz说的timer不是指控件吧,应该是指从午夜至今的单精度秒数,所以在用户输入时写:sys=timer 'sys是一单精度变量
再相减即可

http://hi.baidu.com/ice_kirin