
窗体上放一个Label,三个Command按钮:
Dim h As Integer, m As Integer, s As Integer, ms As IntegerPrivate Sub Command1_Click()
Timer1.Enabled = True
Timer1_Timer
End Sub
Private Sub Command2_Click()
Timer1.Enabled = False
End Sub
Private Sub Command3_Click()
h = 0
m = 0
s = 0
ms = 0
Label1.Caption = Format(h, "00") & ":" & Format(m, "00") & _
":" & 缓州慎Format(s, "00") & ":" & Format(ms, "000")
End Sub
Private Sub Form_Load()
Command1.Caption = "开始"
Command2.Caption = "停止"
Command3.Caption = "重置"
Label1.Caption = ""
Timer1.Interval = 10
Timer1.Enabled = False
End Sub
Private Sub Timer1_Timer()
ms = ms + 10
If ms > 999 Then s = s + 1: ms = 0
If s > 59 Then m = m + 1: s = 0
If m > 59 Then h = h + 迹仿1: m = 0
Label1.Caption = Format(h, "00") & ":"扰敬 & Format(m, "00") & _
":" & Format(s, "00") & ":" & Format(ms, "000")
End Sub
13、记时器(Timer)
作用:通过定期激活Timer事件,使得Timer控件可以每隔一个时间段就执行一次Timer事件中的代码。
在Visual Basic中,可以使用定时器对象在指定的时间间隔中执行某组语句。定时器对象(Timer Object)是个看不见的秒表,利用它可以在程序中访问系统时钟。我们既可以把定时器对象用作一个煮蛋计时器从预定时刻计时,也可以用它实现程序中的某种延时功能,还可以在预定的时间间隔内重复执行某个动作。
在程序设计中,关于时间的处理是非常普遍的。对于年月、日期、时分等的时间处理可以使用时间函数,例如Year、Month、Day等。对于由系统时钟控制的定时响应处理,例如每隔一段时间就进行某种 *** 作,则可以使用定时器控件。
定时器控件的响应事件是时间。加入定时器控件后,在程序中可以通过按照一定的时间间隔执行 *** 作。定时器控件采用的方法是不断检查系统辩世时钟,判断是否满足执行某项任务的要求。根据定时器的这种特性,我们可以进行后台处理工作。
Timer控件的大小固定无法调整,且在运行时不可见,所以在设计阶段不必顾及它的位置。
(1)属性
Interval属性——指定定时器事件发生的间隔毫秒数(可以通过EnabIed属性来禁止该属性生效)
语法结构:
object. Interval [ =milliseconds ]
其中:
object——对象表达式,其值是“应用于”列表中的一个对象;
milliseconds——数值表达式,指定毫秒数,milliseconds的设置值为:
0(缺省值):使晌灶陪Timer控件无效;
间隔的取宴蠢值可在1—64,707之间(包括这两个数值,以毫秒计),即最长时间大约64.65秒
EnabIed属性——控制定时器是否生效
True——打开Timer控件,这时倒计时总是从其Interval属性的设置开始
False——关闭Timer控件
(2)Timer事件
它在一个Timer控件预定的时间间隔过去之后发生。
语法结构:
Private Sub object_ Timer ( [ index As Integer ])
创建Timer 事件程序用以告诉VB在Interval 到时该做什么。
(3)例子
例1:显示系统当前的时间和日期,并且可以随时改变系统的时间和日期。见教材P159。
界面:
Interval属性值为1000。
代码:
Private Sub Form_Load()
Text1.Text = Year(Date) '获取系统年份
Text2.Text = Month(Date) '获取系统月份
Text3.Text = Day(Date) '获取系统的日期
End Sub
--------------------------------------------------------------------------------
Private Sub Check1_Click()
If Check1.Value Then
Timer1.Enabled = True '当选中check1时,timer1控件起作用
Else
Timer1.Enabled = False
Text4.Text = ""
Text5.Text = ""
Text6.Text = ""
End If
End Sub
--------------------------------------------------------------------------------
Private Sub Command1_Click()
Dim mydate As Date
mydate = DateSerial(Text1.Text, Text2.Text, Text3.Text) 'dateserial()函数用于将变量类型转化为日期型
Date = mydate '给系统日期赋值,即更改系统日期
End Sub
--------------------------------------------------------------------------------
Private Sub Command2_Click()
Dim mytime As String
mytime = TimeSerial(Text4.Text, Text5.Text, Text6.Text)'timeserial()函数用于将变量类型转化为时间型
Time = mytime '更改系统时间
End Sub
--------------------------------------------------------------------------------
Private Sub Timer1_Timer()
Text4.Text = Hour(Time)
Text5.Text = Minute(Time)
Text6.Text = Second(Time)'获取系统时间
End Sub
[程序演示][程序下载]
例2:设计一个显示计时的程序。
界面:
定时器的Enabled属性设置为False,Interval=300。
代码:
Private Sub Command1_Click()
Timer1.Enabled = True '使定时器有效
End Sub
--------------------------------------------------------------------------------
Private Sub Command2_Click()
Timer1.Enabled = False '使定时器无效
End Sub
--------------------------------------------------------------------------------
Private Sub Command3_Click()
Label1.Caption = "0"'清0
End Sub
--------------------------------------------------------------------------------
Private Sub Command4_Click()
End
End Sub
--------------------------------------------------------------------------------
Private Sub Form_Load()
Me.Caption = Format(Now, "hh:mm:ss")
End Sub
--------------------------------------------------------------------------------
Private Sub Timer1_Timer()
Dim count As Long
count = Label1.Caption
count = count + 1 '累加
Label1.Caption = count
End Sub
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)