在窗体添加一个Timer和一个Command
Private Sub Command1_Click()Me.Timer1.Interval = 30 * 1000 '定时30秒
Me.Timer1.Enabled = True
Do
If Not Timer1.Enabled Then MsgBox "时间到!": Exit Sub
DoEvents
Loop
End Sub
Private Sub Form_Load()
Timer1.Enabled = False
End Sub
Private Sub Timer1_Timer()
Me.Timer1.Enabled = False
End Sub
VB提倡的是用定时器控件(Timer)的方法。首先在窗体放入一个Timer1和Command1,然后输入以下代码:
Private Sub Command1_Click()Timer1.Interval = 1000
Timer1.Enabled = True
End Sub
Private Sub Form_Load()
Timer1.Enabled = False
End Sub
Private Sub Timer1_Timer()
MsgBox "这个对话框是点击按钮1秒钟后d出来的"
Timer1.Enabled = False
End Sub
此外还可以用API函数Sleep来延时,或者利用循环结合时间函数来延时,但它们都容易造成系统阻塞,所以不建议使用。
使用定时器控件还有一个最大好处,就是在延时期间你的程序还可以继续运行处理其他事务(比如鼠标点击、键盘输入等)。而其他方法产生的延时效果,在延时期间就只能傻等,什么也做不了,甚至还有可能影响到其他程序。
VB6.0可以使用Api函数Sleep来实现延迟功能。
Sleep函数,暂停当前线程指定的时间间隔执行。
用法:
Sleep (S)
S,以毫秒为单位的睡眠时间
通过VB自带的API浏览器,在模块中添加:
Private Declare Sub Sleep Lib "kernel32" Alias "Sleep" (ByVal dwMilliseconds As Long)
代码中用
Sleep (1000) ‘延迟100毫秒执行按钮Click事件
Private Sub Command1_Click()
强烈建议使用Timer控件来实现延迟执行命令,它不会引起暂停等待,而不执行在延迟中发生的其它事件。
使用 Timer 控件
Timer
控件响应时间的流逝。它们独立于用户,编程后可用来在一定的时间间隔执行 *** 作。此控件的一个一般用处是检查系统时钟,判断是否该执行某项任务。对于其它后台处理,
Timer 控件也非常有用。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)