CAnimationRect 类

实现可对矩形边进行动画处理的矩形功能。

语法

class CAnimationRect : public CAnimationBaseObject;

成员

公共构造函数

名称 描述
CAnimationRect::CAnimationRect 已重载。 构造动画矩形对象。

公共方法

名称 描述
CAnimationRect::AddTransition 为左坐标、上坐标、右坐标和底部坐标添加切换效果。
CAnimationRect::GetBottom 提供对表示底部坐标的 CAnimationVariable 的访问权限。
CAnimationRect::GetDefaultValue 返回矩形边界的默认值。
CAnimationRect::GetLeft 提供对表示左坐标的 CAnimationVariable 的访问权限。
CAnimationRect::GetRight 提供对表示右坐标的 CAnimationVariable 的访问权限。
CAnimationRect::GetTop 提供对表示上坐标的 CAnimationVariable 的访问权限。
CAnimationRect::GetValue 返回当前值。
CAnimationRect::SetDefaultValue 设置默认值。

受保护方法

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

公共运算符

“属性” 描述
CAnimationRect::operator RECT 将 CAnimationRect 转换为 RECT。
CAnimationRect::operator= 将 rect 分配给 CAnimationRect。

公共数据成员

“属性” 描述
CAnimationRect::m_bFixedSize 指定矩形是否具有固定大小。

受保护的数据成员

名称 描述
CAnimationRect::m_bottomValue 表示动画矩形的底部边界的封装动画变量。
CAnimationRect::m_leftValue 表示动画矩形的左边界的封装动画变量。
CAnimationRect::m_rightValue 表示动画矩形的右边界的封装动画变量。
CAnimationRect::m_szInitial 指定动画矩形的初始大小。
CAnimationRect::m_topValue 表示动画矩形的上边界的封装动画变量。

备注

CAnimationRect 类封装四个 CAnimationVariable 对象,并且可在应用程序中表示矩形。 若要在应用程序中使用此类,只需实例化此类的对象,使用 CAnimationController::AddAnimationObject 将其添加到动画控制器,然后为每个要应用于左坐标、右坐标、上坐标和底部坐标的转换调用 AddTransition。

继承层次结构

CObject

CAnimationBaseObject

CAnimationRect

要求

标头: afxanimationcontroller.h

CAnimationRect::AddTransition

为左坐标、上坐标、右坐标和底部坐标添加切换效果。

void AddTransition(
    CBaseTransition* pLeftTransition,
    CBaseTransition* pTopTransition,
    CBaseTransition* pRightTransition,
    CBaseTransition* pBottomTransition);

参数

pLeftTransition
指定左侧的切换效果。

pTopTransition
指定顶部的切换效果。

pRightTransition
指定右侧的切换效果。

pBottomTransition
指定底部的切换效果。

备注

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

CAnimationRect::CAnimationRect

构造 CAnimationRect 对象。

CAnimationRect();

CAnimationRect(
    const CRect& rect,
    UINT32 nGroupID,
    UINT32 nObjectID = (UINT32)-1,
    DWORD dwUserData = 0);

CAnimationRect(
    const CPoint& pt,
    const CSize& sz,
    UINT32 nGroupID,
    UINT32 nObjectID = (UINT32)-1,
    DWORD dwUserData = 0);

CAnimationRect(
    int nLeft,
    int nTop,
    int nRight,
    int nBottom,
    UINT32 nGroupID,
    UINT32 nObjectID = (UINT32)-1,
    DWORD dwUserData = 0);

参数

rect
指定默认矩形。

nGroupID
指定组 ID。

nObjectID
指定对象 ID。

dwUserData
指定用户定义的数据。

pt
左上角的坐标。

sz
矩形大小。

nLeft
指定左边界的坐标。

nTop
指定上边界的坐标。

nRight
指定右边界的坐标。

nBottom
指定底部边界的坐标。

备注

该对象使用左侧、顶部、右侧和底部、对象 ID 和组 ID 的默认值构造,这些值将设置为 0。 稍后可在运行时使用 SetDefaultValue 和 SetID 更改这些值。

CAnimationRect::GetAnimationVariableList

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

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

参数

lst
函数返回时,它包含指向表示矩形坐标的四个 CAnimationVariable 对象的指针。

CAnimationRect::GetBottom

提供对表示底部坐标的 CAnimationVariable 的访问权限。

CAnimationVariable& GetBottom();

返回值

对表示底部坐标的封装 CAnimationVariable 的引用。

注解

可调用此方法来直接访问表示底部坐标的基础 CAnimationVariable。

CAnimationRect::GetDefaultValue

返回矩形边界的默认值。

CRect GetDefaultValue();

返回值

一个 CRect 值,该值包含左、右、上、下默认值。

注解

调用此函数来检索先前由构造函数或 SetDefaultValue 设置的默认值。

CAnimationRect::GetLeft

提供对表示左坐标的 CAnimationVariable 的访问权限。

CAnimationVariable& GetLeft();

返回值

对表示左坐标的封装 CAnimationVariable 的引用。

备注

可调用此方法来直接访问表示左坐标的基础 CAnimationVariable。

CAnimationRect::GetRight

提供对表示右坐标的 CAnimationVariable 的访问权限。

CAnimationVariable& GetRight();

返回值

对表示右坐标的封装 CAnimationVariable 的引用。

注解

可调用此方法来直接访问表示右坐标的基础 CAnimationVariable。

CAnimationRect::GetTop

提供对表示上坐标的 CAnimationVariable 的访问权限。

CAnimationVariable& GetTop();

返回值

对表示顶部坐标的封装 CAnimationVariable 的引用。

备注

可调用此方法来直接访问表示顶部坐标的基础 CAnimationVariable。

CAnimationRect::GetValue

返回当前值。

BOOL GetValue(CRect& rect);

参数

rect
输出。 此方法返回时包含当前值。

返回值

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

备注

调用此函数可检索动画矩形的当前值。 如果此方法失败,或者尚未初始化左侧、顶部、右侧和底部对应的基础 COM 对象,则 rect 包含先前在构造函数中或 SetDefaultValue 中设置的默认值。

CAnimationRect::m_bFixedSize

指定矩形是否具有固定大小。

BOOL m_bFixedSize;

备注

如果此成员为 true,则矩形大小固定,每次移动左上角时,都会根据固定大小重新计算右下角的值。 将此值设置为 TRUE 以轻松移动屏幕中的矩形。 在这种情况下,将忽略应用于右坐标和底部坐标的切换效果。 构造对象和/或调用 SetDefaultValue 时,大小存储在内部。 默认情况下,此成员设置为 FALSE。

CAnimationRect::m_bottomValue

表示动画矩形的底部边界的封装动画变量。

CAnimationVariable m_bottomValue;

CAnimationRect::m_leftValue

表示动画矩形的左边界的封装动画变量。

CAnimationVariable m_leftValue;

CAnimationRect::m_rightValue

表示动画矩形的右边界的封装动画变量。

CAnimationVariable m_rightValue;

CAnimationRect::m_szInitial

指定动画矩形的初始大小。

CSize m_szInitial;

CAnimationRect::m_topValue

表示动画矩形的上边界的封装动画变量。

CAnimationVariable m_topValue;

CAnimationRect::operator RECT

将 CAnimationRect 转换为 RECT。

operator RECT();

返回值

动画矩形的当前值为 RECT。

备注

此函数在内部调用 GetValue。 如果出于某种原因 GetValue 失败,则返回的 RECT 将包含所有矩形坐标的默认值。

CAnimationRect::operator=

将 rect 分配给 CAnimationRect。

void operator=(const RECT& rect);

参数

rect
动画矩形的新值。

注解

建议在动画开始之前执行此操作,因为此运算符调用 SetDefaultValue,这会重新创建颜色分量对应的基础 COM 对象(如果已创建这些对象)。 如果将此动画对象订阅到事件(ValueChanged 或 IntegerValueChanged),则需要重新启用这些事件。

CAnimationRect::SetDefaultValue

设置默认值。

void SetDefaultValue(const CRect& rect);

参数

rect
指定左、上、右、下的新默认值。

备注

使用此函数将默认值设置为动画对象。 此方法将默认值分配给矩形的边界。 如果已创建基础 COM 对象,它还会重新创建这些对象。 如果将此动画对象订阅到事件(ValueChanged 或 IntegerValueChanged),则需要重新启用这些事件。

另请参阅