1、如果窗口1和窗口3是独立或者模式窗口:
全局代码:
Public Sub Form_Activated(ByVal sender As Object, ByVal e As System.EventArgs)
'定义一个窗体被激活的事件
If forms.ActiveForm IsNot Nothing Then
Functions.Execute("Form_Activated") '这里自己写个函数处理
End If
End Sub
窗口1和窗口3,afterload事件
AddHandler e.form.baseform.Activated, AddressOf Form_Activated
函数Form_Activated
Dim frm As WinForm.Form = Forms.ActiveForm
If frm.Name = "窗口1" AndAlso Forms("窗口2").Opened = False Then
Forms("窗口2").show
End If
2、如果窗口1和窗口3不是独立或者模式窗口
窗口1和窗口3,afterload事件
For Each frm As WinForm.Form In Forms
If frm.Name = "窗口3" OrElse frm.Name = "窗口4"
If frm.Name = "窗口4" AndAlso frm.Opened = False Then
frm.Open
End If
ElseIf frm.Opened
frm.Close
End If
Next
MainTableChanged事件
If MainTable.Name = "表B(
窗口1和窗口3的所有者表)" AndAlso Forms("窗口3").Opened Then
For Each frm As WinForm.Form In Forms
If frm.Name = "窗口3" OrElse frm.Name = "窗口4"
If frm.Name = "窗口4" AndAlso frm.Opened = False Then
frm.Open
End If
ElseIf frm.Opened
frm.Close
End If
Next
End If