创建动画初始屏幕,如 Office 2010

本文关键字:Office 2010 屏幕 动画 创建 | 更新日期: 2023-09-27 17:56:54

如何使用 C# 创建类似于 Office 2010 中的动画初始屏幕?

创建动画初始屏幕,如 Office 2010

这个问题是关于 winforms 还是 wpf?

如果是关于 wpf:

动画初始屏幕不超过加载"主窗口"时显示的 wpf 窗口。您可以使用表达式混合设计此启动窗口,如 wischi 所述。

您还可以查看此代码项目。

用于创建某种加载动画:简单的 WPF 加载动画

只需创建一个具有 xaml 中定义的动画的窗口,并在应用程序加载动画初始屏幕时显示它>

在温福斯:

您可能需要重写窗体的 paint 方法才能创建动画。但它仍然显示另一个窗口,其中包含另一个窗口,该窗口正在加载。

我建议将 WPF 用于现代应用程序设计和初始屏幕问题。
表达式混合是用于创建动画和 xaml 设计的好工具。但您也可以通过编写普通的 xaml 来设计动画。

表达式混合教程
使用表达式混合的动画:如何创建动画
使用表达式混合的动画:如何启动事件动画

MSDN 信息
动画概述

使用Winforms,它将更加复杂。整个 GUI 由 CPU 呈现(不支持 GPU),但您可以创建自定义用户控件并覆盖 Paint 事件并使用 GDI 进行绘制,但这比使用 wpf 要复杂得多。

如果你想制作一个像Office 2010这样的动态动画启动画面,我建议你使用WPF,永远不要考虑WinForms用代码制作动态动画!

但是,如果您决定使用WinForms,则必须很棘手,并使用以下技巧之一:

•放置一个Flash ActiveX对象,并使用Flash制作动画,然后将它们链接在一起

• 如果你擅长WPF和Silverlight,你可以用Silverlight制作你的动画,并在Web浏览器控件中查看,你也可以使用Flash或HTML5

有关初始屏幕的详细指南,请参见此处: e初始屏幕示例

另一个例子

虽然基础知识是:

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 中,只需右键单击项目>>初始屏幕添加新项即可非常简单。这

是解释它的简单例子。