创建像Office 2010这样的动画启动画面
如何使用C#创建Office 2010中的动画启动画面?
这是关于winforms还是wpf的问题?
如果是关于wpf:
动画启动画面只不过是在加载“主窗口”时显示的wpf窗口。 您可以使用Expression Blend设计此启动窗口,如wischi所述。
您还可以查看此代码项目 。
用于创建某种加载动画: 简单的WPF加载动画
只需创建一个带有在xaml中定义的动画的窗口,并在应用程序加载时显示它 – >动画启动画面。
在Winforms中:
您可能必须覆盖表单的paint方法才能创建动画。 但它仍然显示另一个窗口,其中包含一个动画,而另一个窗口正在加载。
我建议使用WPF进行现代应用程序设计和启动闪屏问题。
Expression Blend是一个用于创建动画和xaml设计的好工具。 但您也可以通过编写纯xaml来设计动画
Expression Blend教程
动画使用Expression Blend:如何创建动画
使用Expression Blend进行动画:如何在事件上启动动画
MSDN信息
动画概述
使用Winforms会很复杂。 整个GUI由CPU呈现(没有GPU支持),但你可以创建一个自定义用户控件并覆盖Paint
事件并使用GDI进行绘图,但这比使用wpf要复杂得多。
如果你想制作像Office 2010这样的动态动画启动画面,我建议你使用WPF ,不要考虑WinForms用代码制作动态动画!
但如果你决定使用WinForms,你必须要有点棘手,并使用其中一个技巧:
•放置一个Flash ActiveX对象,然后使用Flash制作动画,然后将它们链接在一起
•如果您熟悉WPF和Silverlight,您可以使用Silverlight制作动画并在WebBrowser控件中查看它,您也可以使用Flash或HTML5
这里有一个详细的启动画面指南: eExample splashscreen
另一个例子
虽然基础知识是:
1)创建一个闪屏,显示它,关闭/处理它
private void SplashForm() { SplashForm newSplashForm = new SplashForm(); newSplashForm.ShowDialog(); newSplashForm.Dispose(); }
2)在单独的线程/背景工作者上运行启动画面
Thread t1 = new Thread(new ThreadStart(SplashForm)); t1.Start(); Thread.Sleep(5000); // 5 seconds t1.Abort(); Thread.Sleep(1000);
在Winforms中,最简单的方法是在启动画面上使用带有动画Gif的PictureBox。
通过这种方式,您可以在动画上花费比代码更多的时间。
在WPF中,只需右键单击项目>添加新项>启动画面即可。 这个
是解释它的简单例子。