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


Планирование раскадровки

После создания раскадровки он планируется диспетчером анимации.

Обзор

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

После того как раскадровка запланирована, она больше не может быть изменена. Однако после удаления раскадровки из расписания его можно запланировать снова. Разработчики должны соблюдать осторожность при повторном использовании раскадровки, так как это должно быть сделано только в том случае, если в расписании может потребоваться очередь той же раскадровки.

Пример кода

Следующий пример кода взят из MainWindow.cpp в примерах анимации Windows Application-Driven анимации и Timer-Driven анимации. Он использует метод 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
    );
}

Предыдущий шаг

Перед началом этого шага необходимо выполнить этот шаг: создать раскадровки и добавить переходы.

IUIAnimationStoryboard::Schedule

IUIAnimationTimer::GetTime

Обзор раскадровки