Metodo IUIAnimationStoryboard::Schedule (uianimation.h)

Indirizza lo storyboard per pianificare se stesso per giocare.

Sintassi

HRESULT Schedule(
  [in]            UI_ANIMATION_SECONDS           timeNow,
  [out, optional] UI_ANIMATION_SCHEDULING_RESULT *schedulingResult
);

Parametri

[in] timeNow

Ora corrente.

[out, optional] schedulingResult

Risultato della richiesta di pianificazione. Questo parametro può essere omesso dalle chiamate a questo metodo.

Valore restituito

Se il metodo ha esito positivo, viene restituito S_OK. In caso contrario, restituisce un codice di errore HRESULT . Per un elenco di codici di errore, vedere Codici di errore dell'animazione di Windows .

Commenti

Questo metodo indirizza un storyboard per tentare di aggiungersi alla pianificazione dei storyboard. Di seguito vengono definite le regole:

  • Se non sono presenti storyboard che animano alcuna delle stesse variabili di animazione, il tentativo ha esito positivo e il storyboard inizia immediatamente a giocare.
  • Se lo storyboard ha la priorità di annullare, tagliare, concludere o comprimere storyboard in conflitto, il tentativo di pianificare ha esito positivo e il storyboard inizia a giocare il prima possibile.
  • Se lo storyboard non ha priorità, il tentativo ha esito negativo e il parametro schedulingResult è impostato su UI_ANIMATION_SCHEDULING_INSUFFICIENT_PRIORITY.
Se questo metodo viene chiamato da un gestore per gli eventi OnStoryboardStatusChanged , il parametro schedulingResult è impostato su UI_ANIMATION_SCHEDULING_DEFERRED. L'unico modo per determinare se lo storyboard è pianificato correttamente è impostare un gestore eventi storyboard e verificare se lo stato dello storyboard diventa mai UI_ANIMATION_STORYBOARD_INSUFFICIENT_PRIORITY.

È possibile riutilizzare uno storyboard chiamando di nuovo Pianificazione dopo che lo stato ha raggiunto UI_ANIMATION_STORYBOARD_READY. Un tentativo di pianificare uno storyboard quando si trova in qualsiasi stato diverso da UI_ANIMATION_STORYBOARD_BUILDING o UI_ANIMATION_STORYBOARD_READY ha esito negativo e la pianificazioneResult è impostata su UI_ANIMATION_SCHEDULING_ALREADY_SCHEDULED.

Esempio

L'esempio seguente ottiene l'ora corrente e pianifica lo storyboard. Per un esempio aggiuntivo, vedere Pianificare uno Storyboard.

// Get the current time and schedule the storyboard
UI_ANIMATION_SECONDS secondsNow;
hr = m_pAnimationTimer->GetTime(
    &secondsNow
    );
if (SUCCEEDED(hr))
{
    UI_ANIMATION_SCHEDULING_RESULT schedulingResult;
    hr = pStoryboard->Schedule(
        secondsNow,
        &schedulingResult
        );
    if (SUCCEEDED(hr))
    {
        if (schedulingResult == UI_ANIMATION_SCHEDULING_SUCCEEDED)
        {
            ...
        }
        else
        {
            ...
        }
    }
}

Requisiti

Requisito Valore
Client minimo supportato Windows 7, Windows Vista e Aggiornamento della piattaforma per Windows Vista [app desktop | App UWP]
Server minimo supportato Nessuno supportato
Piattaforma di destinazione Windows
Intestazione uianimation.h
DLL UIAnimation.dll

Vedi anche

IUIAnimationStoryboard

IUIAnimationStoryboard::Abandon

IUIAnimationStoryboard::Conclude

IUIAnimationStoryboard::Finish

IUIAnimationStoryboard::GetStatus

IUIAnimationTimer::GetTime

UI_ANIMATION_SCHEDULING_RESULT

UI_ANIMATION_STORYBOARD_STATUS