Compartilhar via


Agendar um Storyboard

Depois que um storyboard é criado, ele é agendado pelo gerenciador de animação.

Visão geral

Por padrão, cada storyboard é iniciado imediatamente quando é agendado. Isso significa que, quando um storyboard começa a animar uma ou mais variáveis, ele pode interromper qualquer outro storyboard animando essas mesmas variáveis. No entanto, um aplicativo pode especificar outros comportamentos determinando a prioridade relativa entre storyboards.

Depois que um storyboard tiver sido agendado, ele não poderá mais ser alterado. No entanto, depois que um storyboard for removido da agenda, ele poderá ser agendado para reprodução novamente. Os desenvolvedores devem ter cuidado ao reutilização de storyboards, pois isso só deve ser feito quando não há nenhuma chance de que o mesmo storyboard precise ser enfileirado devido a uma ação do usuário quando ele já estiver sendo reproduzido ou enfileirado na agenda.

Código de exemplo

O código de exemplo a seguir é obtido de MainWindow.cpp nos exemplos de Animação controlada por aplicativo e animação controlada por temporizador. Ele usa o método IUIAnimationStoryboard::Schedule para agendar o storyboard. Esse método requer a hora atual como um parâmetro.

// 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
    );
}

Etapa anterior

Antes de iniciar esta etapa, você deve ter concluído esta etapa: Criar um Storyboard e adicionar transições.

IUIAnimationStoryboard::Schedule

IUIAnimationTimer::GetTime

Visão geral do Storyboard