启动画面问题 - C# - VS2005

BDe*_*per 1 c# splash-screen winforms

我有一个申请.

首先,我显示一个启动画面,一个表单,这个启动会调用另一个表单.

问题:当显示启动窗体时,如果我然后在启动画面顶部打开另一个应用程序,然后最小化这个新打开的应用程序窗口,则启动画面变为白色.我该如何避免这种情况?我希望我的飞溅能够清晰显示,不受任何应用程序的影响.

Jon*_*eet 5

您需要在另一个线程中显示启动画面 - 目前您的新表单加载代码阻止了启动画面的UI线程.

启动一个新线程,然后在该线程上创建启动画面并调用Application.Run(splash).这将在该线程上启动一个新的消息泵.然后,您需要在准备好时将主UI线程调用回启动屏幕的UI线程(例如使用Control.Invoke/BeginInvoke),因此启动屏幕可以自行关闭.

重要的是要确保不要尝试从错误的线程修改UI控件 - 只使用创建控件的控件.