Win32 API 日本語リファレンス
ホームUI.Animation › IUIAnimationStoryboard2

IUIAnimationStoryboard2

COM
IIDae289cd2-12d4-4945-9419-9e41be034df2継承元IUnknown自前メソッド開始 vtbl3

メソッド 18

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT AddTransition(IUIAnimationVariable2* variable, IUIAnimationTransition2* transition)
variableIUIAnimationVariable2*in遷移を適用する対象のアニメーション変数である。
transitionIUIAnimationTransition2*in変数に追加する遷移オブジェクトである。
vtbl 4 HRESULT AddKeyframeAtOffset(UI_ANIMATION_KEYFRAME existingKeyframe, DOUBLE offset, UI_ANIMATION_KEYFRAME* keyframe)
existingKeyframeUI_ANIMATION_KEYFRAMEin基準となる既存のキーフレームを指定する。
offsetDOUBLEin基準キーフレームからの時間オフセット(秒)を指定する。
keyframeUI_ANIMATION_KEYFRAME*out追加されたキーフレームの識別子を受け取るポインタである。
vtbl 5 HRESULT AddKeyframeAfterTransition(IUIAnimationTransition2* transition, UI_ANIMATION_KEYFRAME* keyframe)
transitionIUIAnimationTransition2*in基準となる遷移を指定する。キーフレームはこの遷移の終了位置に配置される。
keyframeUI_ANIMATION_KEYFRAME*out追加されたキーフレームの識別子を受け取るポインタである。
vtbl 6 HRESULT AddTransitionAtKeyframe(IUIAnimationVariable2* variable, IUIAnimationTransition2* transition, UI_ANIMATION_KEYFRAME startKeyframe)
variableIUIAnimationVariable2*in遷移を適用する対象のアニメーション変数である。
transitionIUIAnimationTransition2*in追加する遷移オブジェクトである。
startKeyframeUI_ANIMATION_KEYFRAMEin遷移を開始するキーフレームを指定する。
vtbl 7 HRESULT AddTransitionBetweenKeyframes(IUIAnimationVariable2* variable, IUIAnimationTransition2* transition, UI_ANIMATION_KEYFRAME startKeyframe, UI_ANIMATION_KEYFRAME endKeyframe)
variableIUIAnimationVariable2*in遷移を適用する対象のアニメーション変数である。
transitionIUIAnimationTransition2*in追加する遷移オブジェクトである。
startKeyframeUI_ANIMATION_KEYFRAMEin遷移を開始するキーフレームを指定する。
endKeyframeUI_ANIMATION_KEYFRAMEin遷移を終了するキーフレームを指定する。
vtbl 8 HRESULT RepeatBetweenKeyframes(UI_ANIMATION_KEYFRAME startKeyframe, UI_ANIMATION_KEYFRAME endKeyframe, DOUBLE cRepetition, UI_ANIMATION_REPEAT_MODE repeatMode, IUIAnimationLoopIterationChangeHandler2* pIterationChangeHandler, UINT_PTR id, BOOL fRegisterForNextAnimationEvent)
startKeyframeUI_ANIMATION_KEYFRAMEin繰り返し区間の開始キーフレームを指定する。
endKeyframeUI_ANIMATION_KEYFRAMEin繰り返し区間の終了キーフレームを指定する。
cRepetitionDOUBLEin繰り返し回数を指定する。
repeatModeUI_ANIMATION_REPEAT_MODEin繰り返しの方式(通常または往復)を指定する。
pIterationChangeHandlerIUIAnimationLoopIterationChangeHandler2*inoptional反復回数の変化を受け取るハンドラーを指定する。NULL を指定可能である。
idUINT_PTRin反復変化通知で使用するループ識別子を指定する。
fRegisterForNextAnimationEventBOOLin次のアニメーションイベントに対してハンドラーを登録するかどうかを指定する。
vtbl 9 HRESULT HoldVariable(IUIAnimationVariable2* variable)
variableIUIAnimationVariable2*inストーリーボードの実行中に値を保持し続ける対象のアニメーション変数である。
vtbl 10 HRESULT SetLongestAcceptableDelay(DOUBLE delay)
delayDOUBLEinこのストーリーボードに許容される最長の遅延時間(秒)を指定する。
vtbl 11 HRESULT SetSkipDuration(DOUBLE secondsDuration)
secondsDurationDOUBLEinストーリーボード開始時にスキップする時間(秒)を指定する。
vtbl 12 HRESULT Schedule(DOUBLE timeNow, UI_ANIMATION_SCHEDULING_RESULT* schedulingResult)
timeNowDOUBLEinスケジュールの基準となる現在時刻(秒)を指定する。
schedulingResultUI_ANIMATION_SCHEDULING_RESULT*outoptionalスケジューリングの結果を受け取るポインタである。
vtbl 13 HRESULT Conclude()
vtbl 14 HRESULT Finish(DOUBLE completionDeadline)
completionDeadlineDOUBLEinストーリーボードを完了させるまでの最大許容時間(秒)を指定する。
vtbl 15 HRESULT Abandon()
vtbl 16 HRESULT SetTag(IUnknown* object, DWORD id)
objectIUnknown*inoptionalストーリーボードに関連付けるタグのオブジェクト部分を指定する。NULL を指定可能である。
idDWORDinストーリーボードに関連付けるタグの識別子部分を指定する。
vtbl 17 HRESULT GetTag(IUnknown** object, DWORD* id)
objectIUnknown**outoptionalストーリーボードに関連付けられたタグのオブジェクト部分を受け取るポインタである。
idDWORD*outoptionalストーリーボードに関連付けられたタグの識別子部分を受け取るポインタである。
vtbl 18 HRESULT GetStatus(UI_ANIMATION_STORYBOARD_STATUS* status)
statusUI_ANIMATION_STORYBOARD_STATUS*outストーリーボードの現在の状態を受け取るポインタである。
vtbl 19 HRESULT GetElapsedTime(DOUBLE* elapsedTime)
elapsedTimeDOUBLE*outストーリーボードの経過時間(秒)を受け取るポインタである。
vtbl 20 HRESULT SetStoryboardEventHandler(IUIAnimationStoryboardEventHandler2* handler, BOOL fRegisterStatusChangeForNextAnimationEvent, BOOL fRegisterUpdateForNextAnimationEvent)
handlerIUIAnimationStoryboardEventHandler2*inoptionalストーリーボードのイベントを受け取るハンドラーを指定する。NULL を指定すると登録を解除する。
fRegisterStatusChangeForNextAnimationEventBOOLin次のアニメーションイベントに対して状態変化通知を登録するかどうかを指定する。
fRegisterUpdateForNextAnimationEventBOOLin次のアニメーションイベントに対して更新通知を登録するかどうかを指定する。

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IUIAnimationStoryboard2 "{AE289CD2-12D4-4945-9419-9E41BE034DF2}"
#usecom global IUIAnimationStoryboard2 IID_IUIAnimationStoryboard2 "{}"
#comfunc global IUIAnimationStoryboard2_AddTransition                  3 sptr,sptr
#comfunc global IUIAnimationStoryboard2_AddKeyframeAtOffset            4 sptr,double,var
#comfunc global IUIAnimationStoryboard2_AddKeyframeAfterTransition     5 sptr,var
#comfunc global IUIAnimationStoryboard2_AddTransitionAtKeyframe        6 sptr,sptr,sptr
#comfunc global IUIAnimationStoryboard2_AddTransitionBetweenKeyframes  7 sptr,sptr,sptr,sptr
#comfunc global IUIAnimationStoryboard2_RepeatBetweenKeyframes         8 sptr,sptr,double,int,sptr,sptr,int
#comfunc global IUIAnimationStoryboard2_HoldVariable                   9 sptr
#comfunc global IUIAnimationStoryboard2_SetLongestAcceptableDelay      10 double
#comfunc global IUIAnimationStoryboard2_SetSkipDuration                11 double
#comfunc global IUIAnimationStoryboard2_Schedule                       12 double,var
#comfunc global IUIAnimationStoryboard2_Conclude                       13
#comfunc global IUIAnimationStoryboard2_Finish                         14 double
#comfunc global IUIAnimationStoryboard2_Abandon                        15
#comfunc global IUIAnimationStoryboard2_SetTag                         16 sptr,int
#comfunc global IUIAnimationStoryboard2_GetTag                         17 sptr,var
#comfunc global IUIAnimationStoryboard2_GetStatus                      18 var
#comfunc global IUIAnimationStoryboard2_GetElapsedTime                 19 var
#comfunc global IUIAnimationStoryboard2_SetStoryboardEventHandler      20 sptr,int,int
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。