每当用户单击用户窗体上的Debit Account
或Credit Account
字段时,都会弹出另一个带有Treeview
的用户窗体。但是,用户将始终必须按“取消”才能关闭用户窗体。选择Voucher Entry Form
用户窗体的区域后,用户窗体是否可以自动关闭?
答案 0 :(得分:1)
如果问题是“如果它不是活动对象,如何卸载用户表单?”那么相关的用户表单必须是无模式的。因为否则在不关闭窗口的情况下无法将其禁用。而且由于无法从模式用户窗体中打开无模式用户窗体,因此主用户窗体也必须是无模式的。
示例:
要做两个用户表单:
第一个用户窗体名为“ MainForm”,具有一个按钮控件,并应用了以下代码:
Private Sub CommandButton1_Click()
Load SubForm
SubForm.Show vbModeless
SubForm.Left = Me.Left + 100
SubForm.Top = Me.Top + 100
End Sub
第二个用户表单名为“ SubForm”,可以为空,但应用了以下代码:
Private Sub UserForm_Deactivate()
Unload Me
End Sub
然后默认模块中的Sub
之后显示主要形式:
Sub test()
MainForm.Show vbModeless
End Sub
现在,在显示MainForm之后,可以通过单击按钮打开SubForm。而且,如果MainForm再次获得活动表单(再次获得焦点),则SubForm将卸载。