CAnimationVariable 類別
表示動畫變數。
語法
class CAnimationVariable;
成員
公用建構函式
名稱 | 描述 |
---|---|
CAnimationVariable::CAnimationVariable | 建構動畫變數物件。 |
CAnimationVariable::~CAnimationVariable | 解構函式。 當 CAnimationVariable 對象被終結時呼叫。 |
公用方法
名稱 | 描述 |
---|---|
CAnimationVariable::AddTransition | 加入轉換。 |
CAnimationVariable::ApplyTransitions | 將內部清單的轉換新增至分鏡腳本。 |
CAnimationVariable::ClearTransitions | 清除轉換。 |
CAnimationVariable::Create | 建立基礎動畫變數 COM 物件。 |
CAnimationVariable::CreateTransitions | 建立要套用至這個動畫變數的所有轉換。 |
CAnimationVariable::EnableIntegerValueChangedEvent | 啟用或停用 IntegerValueChanged 事件。 |
CAnimationVariable::EnableValueChangedEvent | 啟用或停用 ValueChanged 事件。 |
CAnimationVariable::GetDefaultValue | 傳回預設值。 |
CAnimationVariable::GetParentAnimationObject | 傳回父動畫物件。 |
CAnimationVariable::GetValue | 已多載。 傳回動畫變數的目前值。 |
CAnimationVariable::GetVariable | 傳回 IUIAnimationVariable COM 物件的指標。 |
CAnimationVariable::SetDefaultValue | 設定預設值並釋放IUIAnimationVariable COM物件。 |
受保護的方法
名稱 | 描述 |
---|---|
CAnimationVariable::SetParentAnimationObject | 設定動畫變數與動畫對象之間的關聯性。 |
公用資料成員
名稱 | 描述 |
---|---|
CAnimationVariable::m_bAutodestroyTransitions | 指定是否應該刪除相關的轉換物件。 |
受保護的資料成員
名稱 | 描述 |
---|---|
CAnimationVariable::m_dblDefaultValue | 指定傳播至 IUIAnimationVariable 的預設值。 |
CAnimationVariable::m_lstTransitions | 包含動畫這個動畫變數的轉換清單。 |
CAnimationVariable::m_pParentObject | 封裝此動畫變數之動畫物件的指標。 |
CAnimationVariable::m_variable | 儲存 IUIAnimationVariable COM 物件的指標。 如果 COM 物件尚未建立,或建立失敗,則為 NULL。 |
備註
CAnimationVariable 類別會封裝 IUIAnimationVariable COM 物件。 它也會保存要套用至分鏡腳本中動畫變數的轉換清單。 CAnimationVariable 物件內嵌至動畫物件,其可以在應用程式中以動畫值、點、大小、色彩和矩形表示。
繼承階層架構
CAnimationVariable
需求
標頭: afxanimationcontroller.h
CAnimationVariable::~CAnimationVariable
解構函式。 當 CAnimationVariable 對象被終結時呼叫。
virtual ~CAnimationVariable();
CAnimationVariable::AddTransition
加入轉換。
void AddTransition(CBaseTransition* pTransition);
參數
pTransition
要加入之轉換的指標。
備註
呼叫此方法可將轉換新增至要套用至動畫變數的內部轉換清單。 當已排程動畫時,應該清除此清單。
CAnimationVariable::ApplyTransitions
將內部清單的轉換新增至分鏡腳本。
void ApplyTransitions(
CAnimationController* pController,
IUIAnimationStoryboard* pStoryboard,
BOOL bDependOnKeyframes);
參數
pController
父動畫控制器的指標。
pStoryboard
分鏡腳本的指標。
bDependOnKeyframes
TRUE 是表示 如果此方法應該新增相依於主要畫面格的轉換。
備註
這個方法會將從內部清單轉換至分鏡腳本。 它會從最上層程式代碼呼叫數次,以新增不相依於主要畫面格的轉換,並新增相依於主要畫面格的轉換。 如果尚未建立基礎動畫變數 COM 對象,這個方法會在這個階段建立它。
CAnimationVariable::CAnimationVariable
建構動畫變數物件。
CAnimationVariable(DOUBLE dblDefaultValue = 0.0);
參數
dblDefaultValue
指定預設值。
備註
建構動畫變數物件並設定其預設值。 當變數未產生動畫效果或無法產生動畫效果時,會使用預設值。
CAnimationVariable::ClearTransitions
清除轉換。
void ClearTransitions(BOOL bAutodestroy);
參數
bAutodestroy
指定這個方法是否應該刪除轉換物件。
備註
此方法會從內部轉換清單中移除所有轉換。 如果 bAutodestroy 為 TRUE,或m_bAutodestroyTransitions為 TRUE,則會刪除轉換。 否則,呼叫端應該解除分配轉換物件。
CAnimationVariable::Create
建立基礎動畫變數 COM 物件。
virtual BOOL Create(IUIAnimationManager* pManager);
參數
pManager
動畫管理員的指標。
傳回值
如果成功建立動畫變數,則為TRUE;否則為 FALSE。
備註
這個方法會建立基礎動畫變數 COM 物件,並設定其預設值。
CAnimationVariable::CreateTransitions
建立要套用至這個動畫變數的所有轉換。
BOOL CreateTransitions(
IUIAnimationTransitionLibrary* pLibrary,
IUIAnimationTransitionFactory* \*not used*\);
參數
pLibrary
IUIAnimationTransitionLibrary 介面的指標,定義標準轉換的連結庫。
傳回值
如果成功建立轉換,則為TRUE;否則為 FALSE。
備註
當架構需要建立已新增至變數內部轉換清單的轉換時,架構會呼叫此方法。
CAnimationVariable::EnableIntegerValueChangedEvent
啟用或停用 IntegerValueChanged 事件。
void EnableIntegerValueChangedEvent (
CAnimationController* pController,
BOOL bEnable);
參數
pController
父控制器的指標。
bEnable
TRUE - 啟用事件、FALSE - 停用事件。
備註
啟用 ValueChanged 事件時,架構會呼叫虛擬方法 CAnimationController::OnAnimationIntegerValueChanged。 您必須在衍生自 CAnimationController 的類別中覆寫它,才能處理此事件。 每次變更動畫變數的整數值時,都會呼叫這個方法。
CAnimationVariable::EnableValueChangedEvent
啟用或停用 ValueChanged 事件。
void EnableValueChangedEvent (
CAnimationController* pController,
BOOL bEnable);
參數
pController
父控制器的指標。
bEnable
TRUE - 啟用事件、FALSE - 停用事件。
備註
啟用 ValueChanged 事件時,架構會呼叫虛擬方法 CAnimationController::OnAnimationValueChanged。 您必須在衍生自 CAnimationController 的類別中覆寫它,才能處理此事件。 每次變更動畫變數的值時,都會呼叫這個方法。
CAnimationVariable::GetDefaultValue
傳回預設值。
DOUBLE GetDefaultValue() const;
傳回值
預設值。
備註
使用此函式取得動畫變數的預設值。 預設值可以在建構函式或 SetDefaultValue 方法中設定。
CAnimationVariable::GetParentAnimationObject
傳回父動畫物件。
CAnimationBaseObject* GetParentAnimationObject();
傳回值
如果已建立關聯性,則為父動畫物件的指標,否則為NULL。
備註
您可以呼叫這個方法,以擷取父動畫物件的指標(容器)。
CAnimationVariable::GetValue
傳回動畫變數的目前值。
HRESULT GetValue(DOUBLE& dblValue);
HRESULT GetValue(INT32& nValue);
參數
dblValue
動畫變數的目前值。
nValue
動畫變數的目前值。
傳回值
S_OK如果成功取得值,或尚未建立基礎動畫變數。 否則,HRESULT 錯誤碼。
備註
您可以呼叫這個方法以擷取動畫變數的目前值。 如果尚未建立基礎 COM 物件,當函式傳回時,dblValue 會包含預設值。
CAnimationVariable::GetVariable
傳回 IUIAnimationVariable COM 物件的指標。
IUIAnimationVariable* GetVariable();
傳回值
IUIAnimationVariable COM 物件的有效指標,如果動畫變數未建立或無法建立,則為 NULL。
備註
使用此函式來存取基礎 IUIAnimationVariable COM 物件,並視需要直接呼叫其方法。
CAnimationVariable::m_bAutodestroyTransitions
指定是否應該刪除相關的轉換物件。
BOOL m_bAutodestroyTransitions;
備註
當轉換物件從內部轉換清單中移除時,請將此值設定為 TRUE,以強制刪除轉換物件。 如果此值為 FALSE,則應該藉由呼叫應用程式來刪除轉換。 在排程動畫之後,一律會清除轉換清單。 預設值為 FALSE。
CAnimationVariable::m_dblDefaultValue
指定傳播至 IUIAnimationVariable 的預設值。
DOUBLE m_dblDefaultValue;
CAnimationVariable::m_lstTransitions
包含動畫這個動畫變數的轉換清單。
CObList m_lstTransitions;
CAnimationVariable::m_pParentObject
封裝此動畫變數之動畫物件的指標。
CAnimationBaseObject* m_pParentObject;
CAnimationVariable::m_variable
儲存 IUIAnimationVariable COM 物件的指標。 如果 COM 物件尚未建立,或建立失敗,則為 NULL。
ATL::CComPtr<IUIAnimationVariable> m_variable;
CAnimationVariable::SetDefaultValue
設定預設值並釋放IUIAnimationVariable COM物件。
void SetDefaultValue(DOUBLE dblDefaultValue);
參數
dblDefaultValue
指定新的預設值。
備註
使用此方法重設預設值。 這個方法會釋放內部 IUIAnimationVariable COM 物件,因此當重新建立動畫變數時,基礎 COM 物件會取得新的預設值。 如果未建立代表動畫變數的 COM 物件,或是變數尚未產生動畫效果,則 GetValue 會傳回預設值。
CAnimationVariable::SetParentAnimationObject
設定動畫變數與動畫對象之間的關聯性。
void SetParentAnimationObject(CAnimationBaseObject* pParentObject);
參數
pParentObject
包含這個變數之動畫物件的指標。
備註
此方法會在內部呼叫,以建立動畫變數與封裝它的動畫對象之間的一對一關聯性。