CAnimationValue 类

实现有一个值的动画对象功能。

语法

class CAnimationValue : public CAnimationBaseObject;

成员

公共构造函数

名称 描述
CAnimationValue::CAnimationValue 已重载。 构造 CAnimationValue 对象。

公共方法

名称 描述
CAnimationValue::AddTransition 添加要应用于值的切换。
CAnimationValue::GetValue 已重载。 检索当前值。
CAnimationValue::GetVariable 提供对封装动画变量的访问权限。
CAnimationValue::SetDefaultValue 设置默认值。

受保护方法

名称 描述
CAnimationValue::GetAnimationVariableList 将封装的动画变量置于列表中。 (替代 CAnimationBaseObject::GetAnimationVariableList。)

公共运算符

“属性” 描述
CAnimationValue::operator DOUBLE 提供 CAnimationValue 和 DOUBLE 之间的转换。
CAnimationValue::operator INT32 提供 CAnimationValue 和 INT32 之间的转换。
CAnimationValue::operator= 已重载。 将 INT32 值分配给 CAnimationValue。

受保护的数据成员

名称 描述
CAnimationValue::m_value 表示动画值的封装动画变量。

备注

CAnimationValue 类会封装单个 CAnimationVariable 对象,并且可在应用程序中表示单个动画值。 例如,可将此类用于动画透明度(淡化效果)、角度(旋转对象),或者用于在你需要根据单个动画值创建动画的任何其他情况。 若要在应用程序中使用此类,只需实例化此类的对象,使用 CAnimationController::AddAnimationObject 将其添加到动画控制器,然后为要应用于值的每个切换调用 AddTransition。

继承层次结构

CObject

CAnimationBaseObject

CAnimationValue

要求

标头: afxanimationcontroller.h

CAnimationValue::AddTransition

添加要应用于值的切换。

void AddTransition(CBaseTransition* pTransition);

参数

pTransition
指向切换对象的指针。

备注

调用此函数可将切换添加到要应用于动画变量的内部切换列表。 添加切换时,这些切换不会立即应用,而是存储在内部列表中。 调用 CAnimationController::AnimateGroup 时应用切换效果(将其添加到情节提要来获取特定值)。

CAnimationValue::CAnimationValue

构造 CAnimationValue 对象。

CAnimationValue();

CAnimationValue(
    DOUBLE dblDefaultValue,
    UINT32 nGroupID,
    UINT32 nObjectID = (UINT32)-1,
    DWORD dwUserData = 0);

参数

dblDefaultValue
指定默认值。

nGroupID
指定组 ID。

nObjectID
指定对象 ID。

dwUserData
指定用户定义的数据。

注解

构造具有默认属性的 CAnimationValue 对象:默认值、组 ID 和对象 ID 设置为 0。

CAnimationValue::GetAnimationVariableList

将封装的动画变量置于列表中。

virtual void GetAnimationVariableList(
    CList<CAnimationVariable*,
    CAnimationVariable*>& lst);

参数

lst
函数返回时,它包含指向表示动画值的 CAnimationVariable 的指针。

CAnimationValue::GetValue

检索当前值。

BOOL GetValue(DOUBLE& dblValue);
BOOL GetValue(INT32& nValue);

参数

dblValue
输出。 当函数返回时,它包含动画变量的当前值。

nValue
输出。 当函数返回时,它包含动画变量的当前值。

返回值

如果成功检索当前值,则为 TRUE;否则为 FALSE。

备注

调用此函数可检索当前值。 此实现会调用封装的 COM 对象;如果调用失败,此方法将返回先前在构造函数中或使用 SetDefaultValue 设置的默认值。

CAnimationValue::GetVariable

提供对封装动画变量的访问权限。

CAnimationVariable& GetVariable();

返回值

对封装动画变量的引用。

备注

使用此方法访问封装的动画变量。 可通过 CAnimationVariable 访问基础 IUIAnimationVariable 对象;如果尚未创建动画变量,则该对象的指针可以为 NULL。

CAnimationValue::m_value

表示动画值的封装动画变量。

CAnimationVariable m_value;

CAnimationValue::operator DOUBLE

提供 CAnimationValue 和 DOUBLE 之间的转换。

operator DOUBLE();

返回值

动画值的当前值。

备注

提供 CAnimationValue 和 DOUBLE 之间的转换。 此方法在内部调用 GetValue,并且不检查错误。 如果 GetValue 失败,则返回的值将包含以前在构造函数中或使用 SetDefaultValue 设置的默认值。

CAnimationValue::operator INT32

提供 CAnimationValue 和 INT32 之间的转换。

operator INT32();

返回值

动画值的当前值(整数)。

备注

提供 CAnimationValue 和 INT32 之间的转换。 此方法在内部调用 GetValue,并且不检查错误。 如果 GetValue 失败,则返回的值将包含以前在构造函数中或使用 SetDefaultValue 设置的默认值。

CAnimationValue::operator=

将 DOUBLE 值分配给 CAnimationValue。

void operator=(DOUBLE dblVal);
void operator=(INT32 nVal);

参数

dblVal
指定要分配给动画值的值。

nVal
指定要分配给动画值的值。

备注

将 DOUBLE 值分配给 CAnimationValue。 此值设置为封装动画变量的默认值。 如果将此动画对象订阅到事件(ValueChanged 或 IntegerValueChanged),则需要重新启用这些事件。

CAnimationValue::SetDefaultValue

设置默认值。

void SetDefaultValue(DOUBLE dblDefaultValue);

参数

dblDefaultValue
指定默认值。

备注

使用此方法设置默认值。 在尚未启动动画且/或尚未创建基础 COM 对象时,将向应用程序返回默认值。 如果已创建 CAnimationVarible 中封装的基础 COM 对象,此方法将重新创建它,因此可能需要再次调用 EnableValueChanged/EnableIntegerValueChanged 方法。

另请参阅