金圣叹水浒人物评价:VB难题~!高手请进

来源:百度文库 编辑:高校问答 时间:2024/05/09 05:51:11
我想实现一个这样的情况。
Private Sub Command1_Click()
Label1.Caption = "A"
10秒后执行下面的代码。
Label1.Caption = "B"
10秒后执行下面的代码。
Label1.Caption = "C"
10秒后执行下面的代码。
Label1.Caption = "D"
10秒后执行下面的代码。
Label1.Caption = "(一直到Z)"
End Sub

如何实现“ 10秒后执行下面的代码。”这个延迟时间?请不要用那些 Timer.Enabled =False 的方法,因为那些ABC实在太多了。如何能解决问题+20分!!
一楼的大哥
用API函数声明:
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
调用:Call Sleep(10000) '延时10秒
这个方法不可以~只能用于一处,其余的都会被忽略,也就是说一直到Z。A到Y都看不到,只有延时而已。

1.新建个工程,在窗体上放一个Label,name属性为 Label1

2.把下面的代码复制到你的窗体代码里:

---------------------

Private WithEvents myTime As Timer

Private Sub Form_Load()
Set myTime = Controls.Add("VB.Timer", "myTime")
myTime.Interval = 10000
Label1.Caption = "A"
End Sub

Private Sub myTime_Timer()
i = Asc(Label1.Caption)
If i < 90 Then
Label1.Caption = Chr(i + 1)
Else
myTime.Interval = 0
End If
End Sub

-------------------------------

用API函数声明:
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
调用:Call Sleep(10000) '延时10秒

用循环语句加上你要现实的字母的ascii码,再转换成字符,ascii码每次循环加1,可以吗??