启动画面示例

5

我只需要一个简单的启动画面示例。

获取代码,插入我的图片,添加2行代码以加载和完成。

但是我能够在谷歌上找到的都太复杂了,那太多了。我只想要一个带有图片的表单,逐渐变得越来越透明,直到自动隐藏并显示我的窗口。

我尝试了Codeproject上的“prettygoodsplashscreen”,但对我不起作用。

语言为c#.net 2.0


1
请问什么是最佳实践中的启动画面显示方法? - Michael Todd
https://dev59.com/DUXRa4cB1Zd3GeqPpi5h<br/> http://www.dotnetspider.com/forum/131946-splash-screen-c.aspx<br/> https://dev59.com/NHVD5IYBdhLWcg3wNY5Z - zapping
在加载主窗体期间显示启动画面 - Reza Aghaei
2个回答

12

创建启动界面可以简单或复杂,视你的需求而定。

private void Form1_Load(object sender, System.EventArgs e)
{
    // Display the splash screen
    var splashScreen = new SplashForm();
    splashScreen.Show()

    // On the splash screen now go and show loading messages
    splashScreen.lblStatus.Text = "Loading Clients...";
    splashScreen.lblStatus.Refresh();

    // Do the specific loading here for the status set above
    var clientList = _repository.LoadClients();

    // Continue doing this above until you're done

    // Close the splash screen
    splashScreen.Close()
}

显然,启动屏幕本身是你需要决定它的外观方式...


2
为了让你的启动画面成为真正的启动画面,它不应该有除显示正在进行的操作(例如加载客户端)或通过ProgressBar控件显示应用程序启动进度之外的其他代码。
下面是步骤:
1. 实例化BackgroundWorker,在BackgroundWorker.DoWork()方法中启动加载;
2. 在主Form_Load()事件中调用BackgroundWorker.RunWorkerAsync()方法;
3. 仍在Form_Load()事件中,在调用RunWorkerAsync()后,实例化并显示您的启动画面SplashForm.ShowDialog();
4. 在LoadClient()方法中报告进度,例如通过BackgroundWorker.ProgressChanged()事件(您还可以报告BackgroundWorker正在做什么“正在加载客户端…”);
5. 在RunWorkerCompleted()事件中,您可以关闭启动画面窗体Splash.Close()。
稍后我会添加一些进一步的细节。现在必须走了。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接