我通过在运行我的主表单之前立即启动一个新线程来显示一个启动表单。
在此线程运行的方法中,我使用 Application.Run,如下面的选项 1 所示。这是这样做的正确方法,还是有问题在等着我,因为我已经调用了 Application.Run 两次?另一种选择是选项 2,如下所示,我调用 .ShowDialog() 来显示表单。
启动表单本身会在指定时间后关闭,由表单本身控制,这两个选项似乎都运行良好。
所以我的问题是:哪个是首选 - 选项 1 或选项 2?如果你能给出其中一个或另一个的具体原因,那就太好了。
谢谢。
主要片段:
// Run splash screen thread.
Thread splash = new Thread(new ThreadStart(ShowSplash));
splash.Start();
// Run main application.
Application.Run(new MainForm());
显示初始表单选项 1:
static void ShowSplash()
{
Application.Run(new SplashForm());
}
显示启动表单选项 2:
static void ShowSplash()
{
using (SplashForm splash = new SplashForm())
{
splash.ShowDialog();
}
}