谁说不可以用show 1 方法,你把form2.MdiChild 设为False

解决方案 »

  1.   

    建议你不用是MDI窗体,许多地方受限制!
    直接用form不是一样的吗?我感觉更方便!
      

  2.   

    '再加一个全局变量Loaded,指明Form2是否被卸载'Form2
    Option Explicit
    Private Sub Command1_Click()
       succeed = True
    End SubPrivate Sub Form_Load()
        loaded = True
    End SubPrivate Sub Form_Unload(Cancel As Integer)
        loaded = False
    End Sub'Form1
    Option ExplicitPrivate Sub Command1_Click()
    Dim a As Integer
        Form2.Show
        While loaded = True
            DoEvents
        Wend
        If succeed = True Then
            a = MsgBox("操作成功!")
        Else
            a = MsgBox("操作失败!")
        End If
    End Sub
      

  3.   

    Form2.show默认是无模式的显示方式,当然不会等他Unload
    如果想显示一个模式窗口,那么就要把form2.MdiChild 设为False
    然后调用Form2.Show vbModal,这样他会等到Form2的Unload如果还想让Form2是子窗口,那么建议你使用消息来处理
    或者在Form1里定义一个Public的函数,在Form2的Unload事件里直接调用