VB.NET:如何控制程序从Sub-Main启动时显示的窗体



VB.NET 2012我的启动对象设置为(Sub-Main)。在加载主表单之前,应用程序需要收集一些不同的数据集

这篇文章http://msdn.microsoft.com/en-us/library/ms235406(v=vs.110).aspx提到

在Main中,您可以确定程序启动时首先加载哪个表单

但它从未解释如何显示形式

如果我使用ShowDialog,当mainView的Visible属性设置为False或mainView为Hidden 时,应用程序将终止

Module Module1
    Public mainView As New Form1
    Public Sub Main()
        ' initialization code
        mainView.ShowDialog() ' this works until I need to hide mainView, ShowDialog returns and the app terminates
    End Sub
End Module

如果我使用Show,应用程序会立即脱离Sub Main并终止

Module Module1
    Public mainView As New Form1
    Public Sub Main()
        ' initialization code
        mainView.Show() ' this doesn't work at all, the app terminates as soon as Main is executed
    End Sub
End Module

  • 主窗体需要在应用程序运行的整个过程中都存在
  • 在显示主窗体之前,我需要运行部分代码
  • 我需要能够有时隐藏初选,并将其展示给其他人

实现这些要求的最佳方法是什么?

这似乎非常有效。我读过关于消息传递循环的文章,但它似乎不起作用,直到我像下面这样尝试,谢谢LarsTech

Module Module1
    Public mainView As Form1
    Public Sub Main()
        ' initialization code
        ''...
        Application.EnableVisualStyles()
        Application.SetCompatibleTextRenderingDefault(False)
        mainView = New Form1
        Application.Run(mainView) ' I can reference 'mainView' from anywhere in my app, toggle its Visible  property etc.
    End Sub
End Module

相关内容

  • 没有找到相关文章