一个比效大的循环处理过程,可能执行要很长时间,如何才能在执行过程中中止它,点继续时又能按照前次的终止点继续

解决方案 »

  1.   

    Option ExplicitPrivate bFlag As Boolean
    Private Index As LongPrivate Sub Command1_Click()
        Static i As Long
        
        If bFlag = False Then
            bFlag = True
        Else
            Index = i
            bFlag = False
        End If
        
        If bFlag Then
            For i = Index To 100000
                Caption = i
                If bFlag = False Then Exit For
                DoEvents
            Next i
        End If
    End SubPrivate Sub Form_Load()
        bFlag = False
        Index = 0
    End Sub
      

  2.   

    你只能用一个条件来判断, 因为你是无法控制windows的运行的