注册 登录
编程论坛 VB6论坛

如何实现运行停止继续运行?

yuk_yu 发布于 2015-10-29 09:07, 2590 次点击
我有个程序,需要实现运行,停止,继续运行,试了多次都无法实现,请大家予以赐教!

程序代码:

Dim running As Boolean

Sub xx()
Dim i%
For i = 1 To 1000
'处理和调用
If running = False Then Exit For

Next

End Sub

6 回复
#2
风吹过b2015-10-29 11:31
停止,运行,把运行过程放到定时器里的调用。
需要停止时,停止定时器就是了。

WINDOWS 多任务调度系统,不要出现用死循环或定循环来延时,定时 功能。
这样会造成系统无法处理消息,界面卡死。
#3
xiangyue05102015-10-29 13:45
同意楼上的说法
#4
yuk_yu2015-10-30 09:54
回复 2楼 风吹过b
程序代码:
Private Sub Command1_Click()
Me.Timer1.Enabled = True
End Sub

Private Sub Timer1_Timer()

For i = 1 To 1000

'.....
Next

End Sub


是这意思吗?我的目的是要实现随时可以Exit For


[此贴子已经被作者于2015-10-30 09:59编辑过]

#5
风吹过b2015-10-31 17:48
dim i as long
Private Sub Command1_Click()
i=1                                    '循环计数变量,定义为全局变量
Me.Timer1.Enabled = True            '开定时器
End Sub

'定时器时间可以设为 100 以内, 以尽量快点。精度是100
Private Sub Timer1_Timer()
i=i+1                            '计数变量加1
if i>1000 then                     '达到循环次数
   timer1.Enabled = False        '关定时器
   exit sub                    '停止本次循环
end if
'循环体的代码

End Sub
#6
yuk_yu2015-11-02 09:50
回复 5楼 风吹过b
这样不行,我需要的是随时可以停止或继续,版主的必须要运行到>1000,是不是VB无法实现这样的功能啊?

[此贴子已经被作者于2015-11-2 09:52编辑过]

#7
风吹过b2015-11-02 10:50
1000次,是指你开定时器后,最多只能运行1000次。

你开定时器,那么循环就 按时自动循环。
你关定时器,那么循环就停止的。
你再开,就继续。
1