Share via


IUIAnimationStoryboard::Schedule メソッド (uianimation.h)

ストーリーボードにプレイのスケジュールを設定するように指示します。

構文

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

パラメーター

[in] timeNow

現在の時刻。

[out, optional] schedulingResult

スケジュール要求の結果。 このパラメーターは、このメソッドの呼び出しから省略できます。

戻り値

メソッドが成功した場合は、S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。 エラー コードの一覧については、「 Windows アニメーション エラー コード 」を参照してください。

注釈

このメソッドは、ストーリーボードを再生するスケジュールに自身を追加するようにストーリーボードに指示します。 ルールは次のようになります。

  • 同じアニメーション変数のいずれかをアニメーション化するストーリーボードが再生されていない場合、試行は成功し、ストーリーボードはすぐに再生を開始します。
  • ストーリーボードが競合するストーリーボードをキャンセル、トリミング、終了、または圧縮する優先度がある場合、スケジュールの試行は成功し、ストーリーボードの再生はできるだけ早く開始されます。
  • ストーリーボードに優先度がない場合、試行は失敗し、 schedulingResult パラメーターは UI_ANIMATION_SCHEDULING_INSUFFICIENT_PRIORITY に設定されます。
OnStoryboardStatusChanged イベントのハンドラーからこのメソッドが呼び出された場合、schedulingResult パラメーターは UI_ANIMATION_SCHEDULING_DEFERRED に設定されます。 ストーリーボードが正常にスケジュールされているかどうかを判断する唯一の方法は、ストーリーボード イベント ハンドラーを設定し、ストーリーボードの状態がUI_ANIMATION_STORYBOARD_INSUFFICIENT_PRIORITYになったかどうかをチェックすることです。

状態がUI_ANIMATION_STORYBOARD_READYに達した後に Schedule を再度呼び出すことで、ストーリーボード を再利用できます。 ストーリーボードがUI_ANIMATION_STORYBOARD_BUILDINGまたはUI_ANIMATION_STORYBOARD_READY以外の状態で失敗し、schedulingResultUI_ANIMATION_SCHEDULING_ALREADY_SCHEDULEDに設定されている場合に、ストーリーボードをスケジュールしようとしました。

次の例では、現在の時刻を取得し、ストーリーボードをスケジュールします。 その他の例については、「 ストーリーボードをスケジュールする」を参照してください。

// 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
        {
            ...
        }
    }
}

要件

要件
サポートされている最小のクライアント Windows 7、Windows Vista、および Windows Vista 用プラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー サポートなし
対象プラットフォーム Windows
ヘッダー uianimation.h
[DLL] UIAnimation.dll

こちらもご覧ください

IUIAnimationStoryboard

IUIAnimationStoryboard::Abandon

IUIAnimationStoryboard::Conclude

IUIAnimationStoryboard::Finish

IUIAnimationStoryboard::GetStatus

IUIAnimationTimer::GetTime

UI_ANIMATION_SCHEDULING_RESULT

UI_ANIMATION_STORYBOARD_STATUS