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秒钟后弹出来的"
Timer1.Enabled = False
End Sub
此外还可以用API函数Sleep来延时,或者利用循环结合时间函数来延时,但它们都容易造成系统阻塞,所以不建议使用。
使用定时器控件还有一个最大好处,就是在延时期间你的程序还可以继续运行处理其他事务(比如鼠标点击、键盘输入等)。而其他方法产生的延时效果,在延时期间就只能傻等,什么也做不了,甚至还有可能影响到其他程序。
Dim s As String = "123456789"
For i = 1 To Len(s)
TextBox1.Text = TextBox1.Text Mid(s, i, 1)
System.Threading.Thread.Sleep(1000)
Application.DoEvents()
Next
form 的load事件中加一句:timer1.interval=1000
在一个按钮里面加入一句触发timer事件开始计时的代码:
timer1.enabled=true
timer的tick事件中加入这么两句:
textbox1.backcolor=color.red
timer1.enabled=false
Imports System.Threading
Thread.Sleep(1000)’延迟1秒
2.PauseWait(1000)’延迟1秒
Public Sub PauseWait(ByVal HowLong As Long)
Dim tick As Long
tick = My.Computer.Clock.TickCount
Do
My.Application.DoEvents()
Loop Until tick + HowLong My.Computer.Clock.TickCount
End Sub