这是我的代码:
Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim Form2Show As New Thread(AddressOf Form2Thread)
Form2Show.Start()
Main()
End Sub
Public Sub Form2Thread()
Label1.Text = "Loading..."
Me.Show()
End Sub
我正在尝试做的是启动一个新线程,这会导致一个表单显示(在这种情况下只是一个显示加载的窗口),然后继续执行主子例程。
我对线程不是很熟悉,所以我不知道我做得是否正确,但这是基于我在互联网上找到的。我还想指出,这是在 Form2 类中运行的,Form2_Load是程序执行的第一件事。
如果有人有任何建议或更正,我很想听听!谢谢!
编辑:我忘了说发生了什么。运行编译后的 exe 时表单会立即关闭,并且在单步执行时根本不显示(尽管我不知道单步执行如何处理多个线程)。另外,我在项目后面还有另一个表单,它也会打开并立即关闭。
您需要再次显示 Form1,而不是 Form2(使用 Me.Show(),您将再次引用相同的表单 (Form2)。
Public Sub Form2Thread()
Label1.Text = "Loading..."
Form1.Show() '//instead of Me.Show()
End Sub