vb.net - 如何使用按钮关闭 Visual Basic 中打开的表单?
问题描述
我正在开发一款游戏,它有一个简单的菜单系统。其中一个按钮,简称为“Button1”,应该关闭菜单表单并加载游戏窗口。当它打开游戏窗口时,它不会关闭菜单窗口。有没有办法让它关闭一个表格并打开另一个表格。
游戏窗口名称 = GameBoard
菜单窗口名称 = Form2
代码:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim Form2 As New GameBoard
Form2.ShowDialog()
Me.Close()
End Sub
解决方案
表单未关闭的原因是因为Form2
打开方式ShowDialog()
:
Form2.ShowDialog()
' This will not execute until Form2 is closed
Me.Close()
根据以下文档,这将暂停代码的执行,Button1_Click
直到 after Form2
关闭ShowDialog()
:
将表单显示为模式对话框。
或者,您可以只做Form2.Show()
,这不会将其作为对话框打开并允许其余代码运行:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim Form2 As New GameBoard
Form2.Show()
Me.Close()
End Sub
或者,在打开之前关闭当前表单Form2
:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim Form2 As New GameBoard
Me.Close()
Form2.ShowDialog()
End Sub
推荐阅读
- python-sphinx - Sphinx 没有正确格式化重载的 Python 函数参数
- javascript - Redis 键替代
- azure - Azure DataFactory:计划管道的开始/结束时间
- ios - BGProcessingTask 由于信号 9 而终止
- c++ - 返回类型的模板参数推导
- python - Python 有偏样本分布
- php - 由于 php 中的 URL 注入导致信息泄露
- javascript - SyntaxError:在 require("file_path") 语句上出现意外的标记 '<'
- r - 如何将文本粘贴到 R 中 ggplot2 图中的数字 y 轴刻度上?
- javascript - 我是否为 Javascript 中的密码生成器正确编写/使用 concat?