vb 基础问题 计时器

来源:百度知道 编辑:UC知道 时间:2024/06/04 21:19:06
我才自学vb10几天 学到timer控件
想做一个简单的计时器 :点开始时,计时。在点,就停止。(这一步会)
格式00:00:00. 如果我在加一个text,输入的数(单位分钟)
可以加到计时器中。而计时器按,加入后的新数,继续工作。
如:计时器工作到00:40:11,我输入11点加按钮,计时器就变成00:51:11。计时器从00:51:11时起 继续工作。
相反,点“减”按钮,计时器不够分钟,向小时借位。
如:02:00:00. 输入100,点减,则有00:40:00。

代码如下:
Option Explicit
Dim ss%, mm%, hh%, aa%
Private Sub Command1_Click()
If Command1.Caption = "暂停" Then
Command1.Caption = "计时"
Timer1.Enabled = True
Else
Command1.Caption = "暂停"
Timer1.Enabled = False
End If
End Sub
Private Sub Timer1_Timer()
ss = ss + 1
If ss >= 60 Then
mm = mm + 1
ss = 0
If mm >= 60 Then
hh = hh + 1
mm = 0
End If
End If
Label1 = Format$(hh, "00") + ":" + Format$(mm, "00") + ":" + Format$(ss, "00")
End Sub
不知道下面怎么写了,想了一天,都没弄清关系。就是想看看高手怎么写的。
希望会的朋友多多指点。万分感谢。
aa = Val(Text1.Text

把时间转换为长整数来运算就行啦。
给你看个例子:
'长整数转换为时间
Function LongToTime(TimeData As Variant) As String

Dim h As Integer, m As Integer, s As Integer
Dim ss As String

If TimeData < 0 Or TimeData > 86399 Then GoTo ErrorExit

h = Fix(TimeData \ 3600) Mod 24
m = Fix(TimeData \ 60) Mod 60
s = TimeData Mod 60
ss = h & ":" & m & ":" & s
Let LongToTime = Format(ss, "hh:mm:ss")

Exit Function
ErrorExit:
Let LongToTime = "输入数据超限!!!"

End Function
'时间转换为长整数
Function TimeToLong(TimeData As String) As Long

Dim h As Integer, m As Integer, s As Integer
Dim ss As String
Dim temp() As String

On Error GoTo ErrorExit

ss = Format(TimeData, "hh:mm:ss")
temp = Split(TimeData, ":")

Le