在VB中如何实现程序的暂停??

2024-11-20 09:37:01
推荐回答(3个)
回答1:

使用Timer控件不好,因为间隔设置太长不能及时停止,太短影响程序运行。最好的方法是设置一个变量来指示暂停标志。如下程序,在窗体中放置两个Command按钮,一个Label1标签,单击Command1,标签值从1~1000000开始变化,随时按Command2计划停止变化,再按继续。

Dim Pause As Boolean, I As Long

Private Sub Command1_Click()
For I = 1 To 1000000
DoEvents
Do While Pause = True
DoEvents
Loop
Label1 = I
Next
End Sub

Private Sub Command2_Click()
Pause = Not Pause
End Sub

Private Sub Form_Load()
Pause = False
End Sub

回答2:

1、使用API
Sleep 1000
停1秒

2、
可以考虑使用Timer。下面是一个随机改变圆形颜色的程序,单击按钮暂停/取消暂停。
在窗体上放3个控件:Shape,Timer, Command
Type: Shape
Name: Shape1
Shape: 3-Circle
FillStyle: 0-Solid

Type: Timer
Name: Timer1
Interval: 500

Type: CommandButton
Name: Command1
Caption: Pause

把下面的代码复制到窗体代码中
----------------------------
Dim r, g, b As Integer

Private Sub Command1_Click()
Timer1.Enabled = Not Timer1.Enabled
End Sub

Private Sub Form_Load()
Randomize
End Sub

Private Sub Timer1_Timer()
r = CInt(255 * Rnd())
g = CInt(255 * Rnd())
b = CInt(255 * Rnd())
Shape1.FillColor = RGB(r, g, b)
End Sub

回答3:

用Timer控件就可以实现。