共用方式為


IUIAnimationInterpolator2::GetDependencies 方法 (uianimation.h)

針對指定的維度, GetDependencies 會擷取內插補點的各個層面,其取決於傳遞至 IUIAnimationInterpolator2::SetInitialValueAndVelocity 方法或傳遞至 IUIAnimationInterpolator2::SetDuration 方法的持續時間。

語法

HRESULT GetDependencies(
  [out] UI_ANIMATION_DEPENDENCIES *initialValueDependencies,
  [out] UI_ANIMATION_DEPENDENCIES *initialVelocityDependencies,
  [out] UI_ANIMATION_DEPENDENCIES *durationDependencies
);

參數

[out] initialValueDependencies

插補器的層面,取決於傳遞至 SetInitialValueAndVelocity 的初始值。

[out] initialVelocityDependencies

插補器的各個層面,取決於傳遞至 SetInitialValueAndVelocity 的初始速度。

[out] durationDependencies

插補器的各個層面,取決於傳遞至 SetDuration 的持續時間。

傳回值

如果此方法成功,則會傳回S_OK。 否則,它會傳回 HRESULT 錯誤碼。 如需錯誤碼的清單,請參閱 Windows 動畫錯誤碼

備註

呼叫這個方法可識別自定義插補器哪些層面會受到特定輸入的影響:值、速度及持續時間。 針對每個輸入,插補器會傳回下列其中一項:

例如,假設有一個插補器:
  • 接受最終值做為參數。
  • 一律會逐步停止該最終值。
  • 持續時間取決於最終值與初始值之間的差異。
在此情況下,插補器應該傳回|initialValueDependencies 參數UI_ANIMATION_DEPENDENCY_INTERMEDIATE_VALUES UI_ANIMATION_DURATION。 它不應該傳回 UI_ANIMATION_DEPENDENCY_FINAL_VALUE,因為此值會在建立插補器且不受初始值影響時設定。 同樣地,插補器不應該傳回 UI_ANIMATION_DEPENDENCY_FINAL_VELOCITY,因為曲線的斜率會在到達最終值時定義為一律為零。

插補器必須傳回一組正確的旗標。 如果輸出沒有旗標,Windows 動畫會假設對應的參數不會影響插補器結果的該層面。 例如,如果自定義插補器不包含 initialVelocityDependencies的UI_ANIMATION_DEPENDENCY_FINAL_VALUE,Windows Animation 可能會使用任意速度參數呼叫 SetInitialValueAndVelocity,然後呼叫 GetFinalValue 來判斷最終值。 不論哪個速度參數已傳遞至 SetInitialValueAndVelocity,插補器的實作 GetFinalValue 實作都必須傳回相同的結果,因為插補器已宣告轉換的最終值不會相依於初始速度。

注意 如果 durationDependencies 傳回的旗標不包含 UI_ANIMATION_DEPENDENCY_DURATION,則插補器上永遠不會呼叫 SetDuration
 

規格需求

需求
最低支援的用戶端 適用於 Windows 7 的 Windows 8、Windows 7 和平臺更新 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 都不支援
目標平台 Windows
標頭 uianimation.h
Dll UIAnimation.dll

另請參閱

IUIAnimationInterpolator2