判断是否打开了某个窗体Public Function IsFormLoaded(strForm As String) As Boolean Dim frm As Form
IsFormLoaded = False For Each frm In Forms If frm.Name = strForm Then IsFormLoaded = True Exit Function End If Next End Function关闭所有子窗体Dim frm As Form For Each frm In Forms If frm.Name <> "主窗体名字" Then Unload frm End If Next
判断一个窗体是否是子窗体Public Function IsChildForm(strForm As String) As Boolean Dim frm As Form
IsChildForm= False For Each frm In Forms If frm.Name = strForm and frm.MDIChild = True Then IsChildForm= True Exit Function End If Next End Function
1、如何检查是否已经打开子窗体;同意楼上的 2、如何关闭全部已打开的子窗体; Private Sub MDIForm_Unload(Cancel As Integer) Do While Not (Me.ActiveForm Is Nothing) Unload Me.ActiveForm Loop End Sub 这是本人在MDI窗体卸载之前用的,也可自己修改成一个函数
Dim frm As Form
IsFormLoaded = False
For Each frm In Forms
If frm.Name = strForm Then
IsFormLoaded = True
Exit Function
End If
Next
End Function关闭所有子窗体Dim frm As Form
For Each frm In Forms
If frm.Name <> "主窗体名字" Then
Unload frm
End If
Next
Dim frm As Form
IsChildForm= False
For Each frm In Forms
If frm.Name = strForm and frm.MDIChild = True Then
IsChildForm= True
Exit Function
End If
Next
End Function
2、如何关闭全部已打开的子窗体; Private Sub MDIForm_Unload(Cancel As Integer)
Do While Not (Me.ActiveForm Is Nothing)
Unload Me.ActiveForm
Loop
End Sub
这是本人在MDI窗体卸载之前用的,也可自己修改成一个函数