有的VB程序要运行好长时间,于是我想在窗口上加个按钮,在程序运行时,点击一下程序就会暂停,再次点击程序又开始运行.就像realone看电影一样.请教高手,有什么办法可以实现这个功能.

解决方案 »

  1.   

    弄一个timer,先弄个静态变量,然后暂停的时候enabled=false,再开始的时候再=true,可以吗?
      

  2.   

    我还是没明白一个TIMER就搞定了??比如我做了个含有多个FOR保持循环的程序,在计算过程中我想让它停下来,再次点击一个按钮,又让它接着运行。一个TIMER怎么做呀。请各位说得详细一点好吗?谢过了先。
      

  3.   

    在FOR循环中停下来?关注.用TIMER怎么做?
      

  4.   

    "比如我做了个含有多个FOR保持循环的程序,在计算过程中我想让它停下来,再次点击一个按钮,又让它接着运行"
    针对上面的问题解决办法倒有一个,不过就是难看了点:
       窗体的按纽下只要一行代码就可以了那就是: MsgBox "123"
    因为只要msgbox对话框不消失的话程序一直处于暂停状态,点确定消失了程序就会继续运行!
    简单吧???
      

  5.   

    可以定义一个全局变量。如: dim blnStop as boolean 
                              
    然后这样:
    停止按钮事件:sub cmdStop_click()
        blnstop=not blnstop
    end sub
           
    Timer事件:
    sub   Timer1_Timer()
           dim i as integer
           static j as integer
            
           for i=j to 10000
                doevents
                if not blnstop then 
                   '做爱做的事
                   j=i
                   debug.print i 
                else
                   exit for
                end if  
           next
    end sub
      

  6.   

    说实在的楼上的都不是好办法.你们想谁会把自己的运算程序全部写入到timer1_timer()事件中?
    用MSGBOX的方法是可行的但是程序也太不漂亮了吧.
      

  7.   

    设置一个全局布尔值如blcontinue和按钮关联,在程序中加入
     for ...
        doevents
        if not blcontinue then 
           call ProcessBreak()
        end if
      next
    private sub ProBreak()
       do 
         doevents
          if blcontinue then
             exit sub
          end if
       loop while 1
    end sub