创建像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制作动画,然后将它们链接在一起

•如果您熟悉WPFSilverlight,您可以使用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中,只需右键单击项目>添加新项>启动画面即可。 这个

是解释它的简单例子。