Поделиться через


Метод IUIAnimationStoryboard2::RepeatBetweenKeyframes (uianimation.h)

Создает цикл между двумя ключевыми кадрами.

Синтаксис

HRESULT RepeatBetweenKeyframes(
  [in] UI_ANIMATION_KEYFRAME                   startKeyframe,
  [in] UI_ANIMATION_KEYFRAME                   endKeyframe,
  [in] DOUBLE                                  cRepetition,
  [in] UI_ANIMATION_REPEAT_MODE                repeatMode,
  [in] IUIAnimationLoopIterationChangeHandler2 *pIterationChangeHandler,
  [in] UINT_PTR                                id,
  [in] BOOL                                    fRegisterForNextAnimationEvent
);

Параметры

[in] startKeyframe

Ключевой кадр, с которого начинается цикл.

[in] endKeyframe

Ключевой кадр, на котором завершается цикл. EndKeyframe не должен встречаться в раскадровки раньше , чем startKeyframe.

[in] cRepetition

Количество повторов цикла; последняя итерация цикла может завершаться дробно между ключевыми кадрами. Значение , равное нулю, указывает, что указанная часть раскадровки не будет воспроизводиться. Значение UI_ANIMATION_REPEAT_INDEFINITELY (-1) указывает, что цикл будет повторяться бесконечно до тех пор, пока раскадровка не будет обрезана или завершена.

[in] repeatMode

Шаблон для итерации цикла.

Значение UI_ANIMATION_REPEAT_MODE_ALTERNATE (1) указывает, что начало цикла должно чередоваться между ключевыми кадрами (k1–>k2, k2–>k1, k1–>k2 и т. д.).

Значение UI_ANIMATION_REPEAT_MODE_NORMAL (0) указывает, что начало цикла должно начинаться с первого ключевого кадра (k1–>k2, k1–>k2, k1–>k2 и т. д.).

Примечание Если repeatMode имеет значение UI_ANIMATION_REPEAT_MODE_ALTERNATE (1), а cRepetition имеет значение UI_ANIMATION_REPEAT_INDEFINITELY (–1), цикл завершается на конце ключевого кадра.
 

[in] pIterationChangeHandler

Обработчик для каждого события итерации цикла. Значение по умолчанию — 0.

[in] id

Идентификатор цикла, передаваемого в pIterationChangeHandler. Значение по умолчанию — 0.

[in] fRegisterForNextAnimationEvent

Если значение равно true, указывает, что pIterationChangeHandler будет включен в оценку интервала времени до следующего события анимации, возвращаемого методом IUIAnimationManager2::EstimateNextEventTime . Значение по умолчанию — 0 или false.

Возвращаемое значение

Если метод успешно выполнен, возвращает значение S_OK. В противном случае возвращается код ошибки HRESULT . Список кодов ошибок см. в разделе Коды ошибок анимации Windows .

Комментарии

Этот метод направляет раскадровки повторно воспроизводить интервал между заданными ключевыми кадрами, прежде чем воспроизводить оставшуюся часть раскадровки. Если указано конечное число повторений, цикл всегда воспроизводит это количество раз. Если указано UI_ANIMATION_REPEAT_INDEFINITELY (-1), цикл повторяется до завершения раскадровки. В этом случае текущая итерация цикла завершается, а остальная часть раскадровки воспроизводится. Раскадровка, которая бесконечно циклически, также заканчивается, если она усекается.

Вложенные и перекрывающиеся циклы не поддерживаются.

Ключевой кадр представляет момент времени в раскадровки и может использоваться для указания времени начала или окончания переходов. Так как ключевые кадры можно добавлять в конце переходов, их смещения с начала раскадровки могут быть неизвестны до воспроизведения раскадровки.

Требования

Требование Значение
Минимальная версия клиента Windows 8, Windows 7 и Обновление платформы для Windows 7 [классические приложения | Приложения UWP]
Минимальная версия сервера Ни одна версия не поддерживается
Целевая платформа Windows
Header uianimation.h
DLL UIAnimation.dll

См. также раздел

IUIAnimationStoryboard2

IUIAnimationStoryboard2::AddKeyframeAfterTransition

IUIAnimationStoryboard2::AddKeyframeAtOffset