【发布时间】:2016-03-30 23:03:17
【问题描述】:
我有一个 Qt 5.6 NumberAnimation(实际上很多)。我想明确控制它们的评估时间。例如,假设这是一个动画程序,用户创建了动画曲线,现在正沿着时间线来回“擦洗”播放头。每当我获得新的播放头时间时,我都想评估所有动画以生成适合该时间的值。
从 Qt 文档来看,这看起来是不可能的。从Animation 继承的成员允许我对动画进行start() 和pause() 和resume(),从开头到restart() 或从complete() 到结尾。但是我没有看到允许我控制时间的方法或属性。但是,我(通过示例)发现了许多可能的 QML 功能,但没有明显记录。 NumberAnimation 可以做到这一点吗?
如果NumberAnimation 无法做到这一点,还有其他方法吗?以某种方式来表示动画的任意 2D 路径,然后评估沿该路径在给定 X 坐标处的 Y 交点?
【问题讨论】:
-
Numberanimation 继承了 PropertyAnimation 的“duration”,你试过了吗?
-
@FrankOsterfeld 谢谢你的建议,但不,我没有尝试过。
durationproperty 控制动画的总长度(从开始运行到结束需要多长时间)。它不允许我通过动画将时间跳到 95%,然后是 94%,然后是 90%,然后是 25%,然后是 75%,等等。