VB.NET MsgBox为何仅限第二次调用显示信息?
- 内容介绍
- 文章标签
- 相关推荐
本文共计296个文字,预计阅读时间需要2分钟。
以下是简化后的内容:
这是我的代码。当我点击表单上的X按钮时,消息框显示并点击“无,但当我点击是时,消息框关闭并迅速再次出现。然后,第二次点击任意按钮将关闭表单。出了什么问题?”
所以这是我的代码.当我单击表单上的X按钮时,消息框显示并单击“无”,但是当我单击“是”时,消息框将关闭并快速再次出现,然后第二次单击任一按钮将关闭表单.它出什么问题了?Private Sub Config_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing Dim result = MessageBox.Show("Would you like to quit?", MessageBoxButtons.YesNo) If result = DialogResult.No Then e.Cancel = True ElseIf result = DialogResult.Yes Then Application.Exit() End If End Sub
提前致谢
Application.Exit将导致您的表单被关闭(递归),因此您再次看到消息框.如果用户在消息框中按“是”,您应该只在事件处理程序中执行任何操作,并允许应用程序退出继续.如果不设置e.Cancel = True,则表示您希望表单关闭继续.
本文共计296个文字,预计阅读时间需要2分钟。
以下是简化后的内容:
这是我的代码。当我点击表单上的X按钮时,消息框显示并点击“无,但当我点击是时,消息框关闭并迅速再次出现。然后,第二次点击任意按钮将关闭表单。出了什么问题?”
所以这是我的代码.当我单击表单上的X按钮时,消息框显示并单击“无”,但是当我单击“是”时,消息框将关闭并快速再次出现,然后第二次单击任一按钮将关闭表单.它出什么问题了?Private Sub Config_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing Dim result = MessageBox.Show("Would you like to quit?", MessageBoxButtons.YesNo) If result = DialogResult.No Then e.Cancel = True ElseIf result = DialogResult.Yes Then Application.Exit() End If End Sub
提前致谢
Application.Exit将导致您的表单被关闭(递归),因此您再次看到消息框.如果用户在消息框中按“是”,您应该只在事件处理程序中执行任何操作,并允许应用程序退出继续.如果不设置e.Cancel = True,则表示您希望表单关闭继续.

