【问题标题】:Hard Time Closing Forms艰难的结账形式
【发布时间】:2015-07-22 10:35:06
【问题描述】:

好的,所以我正在用 VB 编写一个有两种形式的程序。这些表单通过按钮单击来旋转,并且无论显示什么表单都能够关闭整个程序。截至目前,正在发生的事情是,如果我启动程序并单击 X 关闭,它将关闭。但是,如果我单击按钮以显示 Form2,则关闭按钮 X 不会关闭程序并且程序会继续运行。还要考虑如果我从 Form1 更改为 Form2,然后再返回 Form1,Form1 不再能够像单击按钮之前那样关闭程序。有什么帮助吗?这是我在每个 for 中使用的代码,减去关闭命令。我觉得关闭表单的命令需要在按钮的私有子之外。

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

    'Switches to Daily
    Dim FirstForm As New Form1
    FirstForm.Show()
    Me.Hide()
    'TODO: Close Program on X
End Sub

【问题讨论】:

  • 这里你可以看到如何正确关闭应用程序:stackoverflow.com/questions/4276069/…
  • 除了 mggSoft 的评论,My.Application.OpenForms 属性在这种情况下也很有用
  • 使用 Me.Close() 代替。并更改设置:Project > Properties > Application > Shutdown mode。
  • 每当我回到家时都会尝试所有这些方法,并告诉你什么有效。
  • 我希望 Hans 的选项能够奏效,但您只能选择其中之一,不能同时选择两者。其他的也不起作用。就像我在 Kash 上发布的那样,我必须制作一个自定义 Sub,因为 Form_Load 和 Button_Click 不是这个地方。

标签: vb.net


【解决方案1】:
me.Close()       ' Will close the form. 
application.Exit ' Will close the application.

通读.NET End vs Form.Close() vs Application.Exit Cleaner way to close one's app 以获得更好的描述。一些很好的学习。

【讨论】:

  • 我试过了,但也许我把它们放错了位置。每当我回到家并阅读时,我都会再试一次。
  • 好的,所以我尝试了这个,但没有运气。 Form.Close()、End 和 Application.Exit 没有按我希望的方式工作。所有这些都阻止表单打开。您必须为此制作一个自定义 Sub,因为 Form_Load 和 Button_Click 绝对不是它的地方。
猜你喜欢
  • 2014-08-25
  • 1970-01-01
  • 1970-01-01
  • 2016-05-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多