【问题标题】:How to accelerate WPF fade in/out animation如何加速 WPF 淡入/淡出动画
【发布时间】:2011-10-26 13:42:54
【问题描述】:

我在淡入/淡出时通过改变窗口的不透明度来实现灯箱效果。当我最大化我的窗口时,这个效果有很大的延迟,或者当我使用持续时间属性时,不透明度的变化并不平滑。

我管理这个,例如。像这里:

        DoubleAnimation animate = new DoubleAnimation();
        animate.From = 1.0;
        animate.To = 0.5;

        animate.Duration =  new Duration(TimeSpan.FromSeconds(0));
        this.BeginAnimation(Window.OpacityProperty, animate); // main window
        Window1 win = new Window1(); // new window to get focus
        win.ShowDialog();

如果您知道,请告诉我,这种效果默认情况下是否适用于 GPU?如果没有,我能以某种方式解决这个问题吗?

【问题讨论】:

    标签: wpf animation opacity fading acceleration


    【解决方案1】:

    最大化问题听起来是电脑可能有性能问题,而Duration问题存在是因为你设置为0,零秒动画是瞬间的,当然不流畅。

    【讨论】:

    • 是的,但我写了“当我使用持续时间时”。不小心我粘贴了 0 值的代码,但通常我使用 0.5 - 1 秒并且它不流畅。我还认为这可能是由于性能问题,所以我询问了 GPU。关于最大化的规则是 - 更大的窗口 -> 更慢/不平滑,更小的窗口(例如 400x400) -> 相当平滑。
    猜你喜欢
    • 1970-01-01
    • 2011-04-15
    • 2014-01-20
    • 2012-12-18
    • 1970-01-01
    • 1970-01-01
    • 2019-02-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多