【问题标题】:How can I close Form1 if I closed Form2?如果我关闭了 Form2,如何关闭 Form1?
【发布时间】:2019-11-15 02:24:20
【问题描述】:

当我关闭 Form2 时,Form1 仍在后台运行,调试并没有停止。我在 Form1 中有一个按钮,可以打开 Form2 并使 Form1 不可见。

当我关闭 Form2 然后关闭整个程序时,是否有一个简单的解决方案可以关闭 Form1? (Form2中没有任何按钮)

【问题讨论】:

  • 您使用的是 Windows 窗体吗?如果是这样,您可以挂钩 Form2 的 Form.Closed 或 Form.Closing 事件并在相应的事件处理程序中关闭程序。
  • Unload Form1 应该可以解决问题,但如果您要关闭整个应用程序,那么它也应该会自动关闭所有表单。

标签: vba formclosing


【解决方案1】:

关闭 Form2 时调用Application.Quit。 如果您使用的是用户窗体:

Private Sub UserForm_Terminate()
    Application.Quit
End Sub

如果您使用的是 Access 表单:

'Close event on Form2
Private Sub Form_Close()
    DoCmd.Close acForm, "Form1", acSaveNo
    Application.Quit
End Sub

注意Application.Quit 将真正退出应用程序。如果您只想关闭表单,请改用Unload Form1(也可以在这些代码块之一中调用)。

【讨论】:

  • 但是我从哪里调用它呢?我应该把它放在哪里?
  • 我编辑了我的回复。您可能只想使用 DoCmd(如果您使用 Access)而不是 Application.Quit,后者会关闭所有内容。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-06-22
  • 2014-01-15
相关资源
最近更新 更多