Private Sub Timer1_Timer()
a = a + 1
Label1.Caption = Str(Int(a / 60)) + ":" + Str(a - Int(a / 60) * 60)
End Sub
这一段看不懂,能否帮我解读解读
Private Sub Timer1_Timer()
a = a + 1
Label1.Caption = Str(Int(a / 60)) + ":" + Str(a - Int(a / 60) * 60)
End Sub
这一段看不懂,能否帮我解读解读
这是一段多么富有智慧的语句啊,收藏了
a=a+1表示没执行一遍代码就使a的值加1,从而使下边遇到的情况不同
Label1.Caption = Str(Int(a / 60)) + ":" + Str(a - Int(a / 60) * 60)表示把Str(Int(a / 60)) + ":" + Str(a - Int(a / 60) * 60)的值赋给Label1控件以显示
主要是讲一讲Str(Int(a / 60)) + ":" + Str(a - Int(a / 60) * 60):
str()是把括号里的值改为string格式,以便用“+”相连,如果不用str()就要把+改为&,也可以起到同样的效果
int()是吧数值的小数部分去掉,也就是只留整数部分
当a在0~59时,a / 60小于0,Int(a / 60)就是0;当a在60~119时,2=Int(a / 60);当a在120~179时,3=Int(a / 60)……
当a=0时,0=a - Int(a / 60) * 60;当a=1时,1=a - Int(a / 60) * 60;当a=2时,2=a - Int(a / 60) * 60;……
不过如果a>60就不一样了:当a=60时,0=a - Int(a / 60) * 60;当a=61时,1=a - Int(a / 60) * 60;当a=62时,2=a - Int(a / 60) * 60;……
于是,如果在通用添加dim a as Integer,再在form-load里添加a=0,再将Timer1的interval=1000(表示每过一秒运行一次代码),那么程序就是计时器啦,这是一个多么具智慧的代码呀,不错
如果Label1.Caption = Str(Int(a / 3600)) + ":" + Str(Int(a / 60) - Int(Int(a / 60) / 60) * 60) + ":" + Str(a - Int(a / 60) * 60),就能时分秒俱全了
如果Label1.Caption = Str(Int(a / 86400)) + "-" + Str(Int(a / 3600) - Int(Int(a / 3600) / 60) * 60) + ":" + Str(Int(a / 60) - Int(Int(a / 60) / 60) * 60) + ":" + Str(a - Int(a / 60) * 60)
就连日也可以,你可以自己去发现规律,再整个世纪、年代、年、月啥的,锻炼一下思维,我都没想过一个变量居然可以干这么多事情
这是一个显示时间的程序,如果Timer控件的时间间隔设为1000毫秒,那么
a = a + 1 'a代表经过的时间(单位:秒)
Label1.Caption = Str(Int(a / 60)) + ":" + Str(a - Int(a / 60) * 60)
Int(a / 60)) 表示经过的分钟数的整数部分,
a - Int(a / 60) * 60 表示秒数部分(即剩余的分钟数化为以秒为单位后的数字)
举例如下:
如果a=1205
那么a/60=20.083333333,则Int(a/60)=20
而Int(a/60)*60=1200
所以,a - Int(a/60)*60=5
所以,此时 Label1 应该显示 20:5
即1205秒=20分5秒