我的程序中有一个主窗体frmMain
还有一个多文档窗体(如果打开后,里面加载了四个同样的form)
还有一个不可见的窗体
在点击frmmain中的按钮后 还会弹出其他窗体现在 想只要关闭frmMain,其他的窗体都一起退出,完全关闭程序 
该如何写代码?现有的代码如下:
Private Sub Form_Unload(Cancel As Integer)
on err goto display    (此处省略一些退出前处理)display:
'    For i = Forms.Count - 1 To 1 Step -1
'        Unload Forms(i)
'    Next    For Each frm In Forms
        Unload frm
    Next
exit sub

解决方案 »

  1.   

    Private Sub Form_Unload(Cancel As Integer)
    'Set Form1 = Nothing
    End  '全完了
    End Sub
      

  2.   

    Option ExplicitPrivate Sub Command1_Click()
      Dim nCount As Integer
      Dim i As Integer
       
       nCount = Forms.Count - 1
       For i = nCount To 1 Step -1
          Unload Forms(i)
       Next
    End Sub
      

  3.   

    不好意思 end这个方法我一年前就已经试过了
    但是发现 使用了end之后 
    运行源代 则退出正常
    但是 编译成exe后,退出 则提示:unknown software exception
    结果 我就只能来求各位给个好办法
      

  4.   

    我觉得你怎么是在出错的时候才调用
        For Each frm In Forms
            Unload frm
        Next
    而且怎么说,个人认为,加on error goto ...这样出错处理是对的,但在程序调试阶段,最好不要用,尽早发现错误!!!
    你只要把for语句放到正常代码后面,应该能完全退出!
      

  5.   

    to:guoyx(guoyx)
    我这样做的目的是,前面还有一些退出前的操作
    保证在这些操作出错的情况下,系统仍然能够退出
      

  6.   

    现在 我发现 在我的frmmian中有四个定时器
    但是 其中有一个定时器 在unload frmmain还在运行
    而其他的定时器都关闭了
    这种奇怪的现象 ,大家是否遇到过?
    但是在我的程序中的其他窗体 以及模块中 都没有调用该定时器。
      

  7.   

    你用什么软件制作的.exe呢?
    end好象可以执行吧~