添加一个label和一个timer 把timer的interval设成10 添加代码Dim s As Integer, f As Integer, m As Integer, i As IntegerPrivate Sub Timer1_Timer() i = i + 1 If i = 100 Then m = m + 1 i = 0 If m = 60 Then f = f + 1 m = 0 If f = 60 Then s = s + 1 f = 0 End If End If End If Label1.Caption = "运行时间: " & s & ":" & f & ":" & m & ":" & i End Sub
Option Explicit Private Declare Sub GetSystemTime Lib "kernel32" (lpSystemTime As SYSTEMTIME) Private Type SYSTEMTIME wYear As Integer wMonth As Integer wDayOfWeek As Integer wDay As Integer wHour As Integer wMinute As Integer wSecond As Integer wMilliseconds As Integer End TypeDim stStart As SYSTEMTIMEPrivate Sub Command1_Click()
把timer的interval设成10
添加代码Dim s As Integer, f As Integer, m As Integer, i As IntegerPrivate Sub Timer1_Timer()
i = i + 1
If i = 100 Then
m = m + 1
i = 0
If m = 60 Then
f = f + 1
m = 0
If f = 60 Then
s = s + 1
f = 0
End If
End If
End If
Label1.Caption = "运行时间: " & s & ":" & f & ":" & m & ":" & i
End Sub
Private Declare Sub GetSystemTime Lib "kernel32" (lpSystemTime As SYSTEMTIME)
Private Type SYSTEMTIME
wYear As Integer
wMonth As Integer
wDayOfWeek As Integer
wDay As Integer
wHour As Integer
wMinute As Integer
wSecond As Integer
wMilliseconds As Integer
End TypeDim stStart As SYSTEMTIMEPrivate Sub Command1_Click()
Dim stNow As SYSTEMTIME
Dim t As Long
GetSystemTime stNow
t = (stNow.wHour - stStart.wHour) * 60 * 60 * 1000 + _
(stNow.wMinute - stStart.wMinute) * 60 * 1000 + _
(stNow.wSecond - stStart.wSecond) * 1000 + _
(stNow.wMilliseconds - stStart.wMilliseconds)
MsgBox "本程序已运行:" & CStr(t) & "毫秒"
End SubPrivate Sub Form_Load()
GetSystemTime stStart
End Sub
以上可以实现毫秒级的。需要一个窗体和一个CommandButton。
两者相减就是程序运行的时间(毫秒)Private Declare Function GetTickCount Lib "kernel32" () As Long
更正:上面的代码会产生“溢出”错误,改为下面的
Private Sub Command1_Click()
Dim stNow As SYSTEMTIME
Dim t As Currency
GetSystemTime stNow
t = CLng(stNow.wHour - stStart.wHour) * 60 * 60 * 1000 + _
CLng(stNow.wMinute - stStart.wMinute) * 60 * 1000 + _
CLng(stNow.wSecond - stStart.wSecond) * 1000 + _
CLng(stNow.wMilliseconds - stStart.wMilliseconds)
MsgBox "本程序已运行:" & CStr(t) & "毫秒"
End Sub
我只是测试用,可以用就行了
结贴!!!