Планирование раскадровки
После создания раскадровки диспетчер анимации планирует ее запланировать.
Общие сведения
По умолчанию каждая раскадровка запускается сразу по расписанию. Это означает, что когда раскадровка начинает анимировать одну или несколько переменных, она может прервать любые другие раскадровки, анимирующие эти же переменные. Однако приложение может указать другие варианты поведения, определив относительный приоритет между раскадровками.
После планирования раскадровки ее больше нельзя изменить. Однако после удаления раскадровки из расписания ее можно запланировать для воспроизведения снова. Разработчики должны проявлять осторожность при повторном использовании раскадровки, так как это следует делать только в тех случаях, когда нет шансов, что та же раскадровка может быть поставлена в очередь из-за действия пользователя, когда она уже играет или помещается в очередь в расписании.
Пример кода
Следующий пример кода взят из MainWindow.cpp в примерах анимации Windows На основе приложений и Анимация на основе таймера. Для планирования раскадровки используется метод IUIAnimationStoryboard::Schedule . Для этого метода в качестве параметра требуется текущее время.
// Get the current time and schedule the storyboard for play
UI_ANIMATION_SECONDS secondsNow;
hr = m_pAnimationTimer->GetTime(
&secondsNow
);
if (SUCCEEDED(hr))
{
hr = pStoryboard->Schedule(
secondsNow
);
}
Предыдущий шаг
Прежде чем приступить к этому шагу, необходимо выполнить следующие действия: Создание раскадровки и Добавление переходов.
Связанные темы