怎样用VB编写一个倒计时程序

怎样用VB编写一个倒计时程序,第1张

程序的窗体内含有两个Timer控件,一个文本框控件,两个命令按钮控件,四个标签控件。其中Timer1的Interval属性设置为60000,也就是一分钟响应一次,Timer1的Interval属性设置为500,也就是每0.5秒响应一次。Label1显示剩余时间,Label2显示现在时间。

代码如下:

Dim n As Integer

Dim t As String

Private Sub Command1_Click()'计时开始

If Text1.Text = "" Then

Exit Sub

End If

t = Val(Text1.Text)

Timer1.Enabled = True

Label1.Caption = "剩余时间:" &t &"分钟"

End Sub

Private Sub Command2_Click() '退出程序

End

End Sub

Private Sub Timer1_Timer()

n = n + 1

Label1.Caption = "剩余时间:" &t - n &"分钟"

If n = t Then

Beep

MsgBox "时间到", vbExclamation + vbOKOnly

Timer1.Enabled = False

n = 0

End If

End Sub

Private Sub Timer2_Timer()

Label2.Caption = "现在时间:" &Time

End Sub

1、首先,建立一个工程,并在窗口中添加三个命令按钮,caption分别改为“设置倒计时”、“启动倒计时”、“继续”,将窗体Form1的caption属性改为“倒计时”,再添加一个计时器控件,并且添加一个文本框,将界面设置成如下图所示。

2、将文本框的Text里的属性清空干净,再把字体Font的属性调整成为小四,方便接下来的观察,一定记得把背景色属性Backcolor调为浅黄色。

3、接下来,双击“设置倒计时”命令这个按钮,就会进入到代码编辑窗口,输入如图所示代码:

4、接着双击“启动倒计时”命令这个按钮,接下来会进入代码编辑窗口,再输入如下图所示代码:

5、再接着双击“计时器”控件,然后进入代码编辑窗口,输入如图所示代码:

6、在代码编辑窗口的通用段进行这三个变量的定义:Dim h As Integer, m As Integer, s As Integer '分别存储这三个量时、分、秒,如下图所示。

7、最后再双击窗体,然后就会进入代码编辑器,在 Form_Load事件中写入代码,代码如下图红框所示:

8、接着关闭代码窗口,按一下F5运行程序,再单击“设置倒计时”这个命令按钮,这时候就会d出一个输入对话框,一定要记得此时输入分钟数,数字为1,然后确定,如图所示:

9、最后一定要单击“启动倒计时”这个命令按钮,然后文本框就会显示倒计时时间,并会不断地变动,这个时候你就可以看见时间在变动,这就是实现了倒计时功能,如图所示:

扩展资料:

使用VB倒计时设置计时参数5X60=300秒,然后设置定时器1S中断.当计时器为0就是5分钟,将计时器参数显示在文本框中就可以了。这个题目需要使用计时器控件,所以计时器的控件的Timer事件以及Enable属性、Interval属性需要熟知。

窗体上放一个label,一个HScrollbox,三个Commandbutton,一个timer

双击窗体,删掉别的代码,粘贴下面代码:

Dim Minute, Second As Long

Private Sub Command1_Click()

Minute = InputBox("输入分钟数", "倒计时时间")

Second = 60 * Minute

Label1.Caption = "倒计时时间为" &Minute &"分钟"

Command2.Enabled = True

Command3.Enabled = True

End Sub

Private Sub Command2_Click()

Timer1.Interval = 1000

Timer1.Enabled = True

End Sub

Private Sub Command3_Click()

Timer1.Enabled = False

Label1.Caption = "已结束倒计时"

End Sub

Private Sub Form_Load()

Timer1.Enabled = False

Command2.Enabled = False

Command3.Enabled = False

End Sub

Private Sub Timer1_Timer()

If Second <0 Then

Timer1.Enabled = False

Else

Label1.Caption = IIf(Second \ 3600 = 0, "00", IIf(Second \ 3600 <10, "0" &Second \ 3600, Second \ 3600)) &":" &IIf(Second \ 60 Mod 60 = 0, "00", IIf(Second \ 60 Mod 60 <10, "0" &Second \ 60 Mod 60, Second \ 60 Mod 60)) &":" &IIf(Second Mod 60 Mod 60 = 0, "00", IIf(Second Mod 60 Mod 60 <10, "0" &Second Mod 60 Mod 60, Second Mod 60 Mod 60))

HScroll1.Value = (60 * Minute - Second) / (60 * Minute) * HScroll1.Max

Second = Second - 1

End If

End Sub


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11273906.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存