我打算为我的桌面应用程序创建一个与Visual Studio 2010相似的splash screen(随意使用任何版本的C#/ VB.NET / CLR)。
根据Visual Studio博客,启动屏幕不是使用WPF开发的,因为它会导致CLR和WPF库加载,从而导致应用程序加载的大量延迟。因此,出于性能原因,他们还原为C ++和Win32堆栈来做同样的事情。
Windows Forms或WPF开发人员是否有可行的选项来利用相同的品牌?我们的想法是在闪屏中拥有类似的丰富品牌,而不会失去性能和启动时间。
使用PNG和透明效果对Windows窗体没有帮助(一个已知问题,我已经在此网站上阅读了相关问题)。只是强调:它是一个闪屏,所以启动时间不会受到影响。
答案 0 :(得分:4)
答案 1 :(得分:4)
写这篇文章的人实际上发了帖子, Behind the Scenes: The Splash Screen (2009-11-10)......
答案 2 :(得分:0)
我必须用massively multiplayer online game (MMO)的修补程序做类似的事情,我们喜欢在游戏中漂亮的闪屏。我做了一个自定义的ONLOAD事件(而不是OnShown或Load事件,在这种情况下都会带来一些不便)并将我的代码放在那里显示漂亮的图片:
protected override void OnLoad(EventArgs args)
{
base.OnLoad(args);
Application.Idle += new EventHandler(OnLoaded);
}
private void OnLoaded(object sender,
EventArgs args)
{
Application.Idle -= new EventHandler(OnLoaded);
// TODO: Add relevant code here
}
至于图片,肯定有一种方法可以使用本机行为显示PNG文件(对于Visual Studio初始屏幕中的部分透明度)。