IUIAnimationStoryboard::AddTransitionBetweenKeyframes 方法 (uianimation.h)

在两个关键帧之间添加转换。

语法

HRESULT AddTransitionBetweenKeyframes(
  [in] IUIAnimationVariable   *variable,
  [in] IUIAnimationTransition *transition,
  [in] UI_ANIMATION_KEYFRAME  startKeyframe,
  [in] UI_ANIMATION_KEYFRAME  endKeyframe
);

参数

[in] variable

要为其添加转换的动画变量。

[in] transition

要添加的转换。

[in] startKeyframe

指定新转换开始的关键帧。

[in] endKeyframe

指定新转换结束的关键帧。 endKeyframe 不能比 startKeyframe 更早出现在情节提要中。

返回值

如果该方法成功,则它会返回 S_OK。 否则,将返回 HRESULT 错误代码。 有关错误代码的列表,请参阅 Windows 动画 错误代码。

返回代码 说明
UI_E_TRANSITION_ALREADY_USED
此转换已添加到情节提要或已添加到已完成播放并已发布的情节提要中。
UI_E_TRANSITION_ECLIPSED
切换可能会掩盖情节提要中另一个转换的开始。
UI_E_START_KEYFRAME_AFTER_END
开始关键帧可能出现在结束关键帧之后。

注解

此方法将指定的转换应用于情节提要中的指定变量,转换从指定的关键帧开始和结束。 如果转换是使用指定的持续时间参数创建的,则该持续时间将被开始和结束关键帧之间的持续时间所覆盖。 否则,Windows 动画会根据需要加快或减慢转换速度。

关键帧表示情节提要中的某个时刻,可用于指定转换的开始和结束时间。 由于关键帧可以在切换结束时添加,因此在播放情节提要之前,它们与情节提要开头的偏移量可能未知。

必须按照切换的播放顺序添加切换。 切换可以在情节提要中的上一个切换完成之前开始播放,在这种情况下,新转换看到的初始值和速度将由前一个转换的状态决定。 转换不能在上一个转换开始之前开始。

要求

   
最低受支持的客户端 Windows 7、Windows Vista 和适用于 Windows Vista 的平台更新 [桌面应用 |UWP 应用]
最低受支持的服务器 无受支持的版本
目标平台 Windows
标头 uianimation.h
DLL UIAnimation.dll

另请参阅

IUIAnimationStoryboard

IUIAnimationStoryboard::AddKeyframeAfterTransition

IUIAnimationStoryboard::AddKeyframeAtOffset

IUIAnimationStoryboard::AddTransition

IUIAnimationStoryboard::AddTransitionAtKeyframe

IUIAnimationTransition

IUIAnimationTransitionLibrary