我使用表单应用程序。当我启动它时,主窗体会自动启动,这意味着该类也会自动创建。
有没有办法可以像下面那样手动执行此操作,或者是从一开始就始终初始化的表单应用程序的第一种形式?
gMainForm = New MainForm
gMainForm.Show()
答案 0 :(得分:2)
如果您在项目属性中启用了Application Framework,那么是,将自动创建并显示启动表单。您可以挂钩启动过程并在此之前执行操作或退出应用程序而不会发生但您无法运行应用程序并且没有显示启动表单。
您可以执行的操作是禁用Application Framework,然后编写自己的Main
方法。在该方法中,您可以选择在需要时调用Application.Run
,如果您确实调用它,则可以传递自定义ApplicationContext
。 Here是后者的一个例子。这是该示例中的Main
方法,用我自己添加的模块编写:
Module Program
Public Sub Main()
Application.Run(New TrayApplicationContext)
End Sub
End Module
在这种情况下,TrayApplicationContext
是继承ApplicationConext
的类。 Application.Run
是创建消息泵的原因,它需要表单或应用程序上下文。在这种特殊情况下,TrayApplicationConext
包含TrayApplicationManager
,这是一个显示NotifyIcon
并允许从那里显示表单的组件。