다음을 통해 공유


CAnimationGroup 클래스

애니메이션 스토리보드, 애니메이션 개체 및 전환을 결합하여 애니메이션을 정의하는 애니메이션 그룹을 구현합니다.

구문

class CAnimationGroup;

멤버

공용 생성자

속성 설명
CAnimationGroup::CAnimationGroup 애니메이션 그룹을 생성합니다.
CAnimationGroup::~CAnimationGroup 소멸자입니다. 애니메이션 그룹이 제거될 때 호출됩니다.

공용 메서드

이름 설명
CAnimationGroup::Animate 그룹에 애니메이션을 추가합니다.
CAnimationGroup::ApplyTransitions 애니메이션 개체에 전환을 적용합니다.
CAnimationGroup::FindAnimationObject 지정된 애니메이션 변수를 포함하는 애니메이션 개체를 찾습니다.
CAnimationGroup::GetGroupID GroupID를 반환합니다.
CAnimationGroup::RemoveKeyframes 애니메이션 그룹에 속한 모든 키 프레임을 제거하고 선택적으로 삭제합니다.
CAnimationGroup::RemoveTransitions 애니메이션 그룹에 속한 애니메이션 개체에서 전환을 제거합니다.
CAnimationGroup::Schedule 지정된 시간에 애니메이션을 예약합니다.
CAnimationGroup::SetAutodestroyTransitions 그룹에 속한 모든 애니메이션 개체가 자동으로 전환을 삭제하도록 지시합니다.

보호된 메서드

속성 설명
CAnimationGroup::AddKeyframes 스토리보드에 키 프레임을 추가하는 도우미입니다.
CAnimationGroup::AddTransitions 스토리보드에 전환을 추가하는 도우미입니다.
CAnimationGroup::CreateTransitions COM 전환 개체를 만드는 도우미입니다.

공용 데이터 멤버

이름 설명
CAnimationGroup::m_bAutoclearTransitions 그룹에 속한 애니메이션 개체에서 전환을 지우는 방법을 지정합니다. 이 멤버가 TRUE이면 애니메이션이 예약되면 전환이 자동으로 제거됩니다. 그렇지 않으면 전환을 수동으로 제거해야 합니다.
CAnimationGroup::m_bAutodestroyAnimationObjects 애니메이션 개체를 삭제하는 방법을 지정합니다. 이 매개 변수가 TRUE이면 그룹이 제거되면 애니메이션 개체가 자동으로 제거됩니다. 그렇지 않으면 애니메이션 개체를 수동으로 제거해야 합니다. 기본값은 FALSE입니다. 그룹에 속한 모든 애니메이션 개체가 연산자 new와 함께 동적으로 할당된 경우에만 이 값을 TRUE로 설정합니다.
CAnimationGroup::m_bAutodestroyKeyframes 키 프레임을 삭제하는 방법을 지정합니다. 이 값이 TRUE이면 모든 키 프레임이 제거되고 제거됩니다. 그렇지 않으면 목록에서만 제거됩니다. 기본값은 TRUE입니다.
CAnimationGroup::m_lstAnimationObjects 애니메이션 개체 목록을 포함합니다.
CAnimationGroup::m_lstKeyFrames 키 프레임 목록을 포함합니다.
CAnimationGroup::m_pStoryboard 애니메이션 스토리보드를 가리킵니다. 이 포인터는 애니메이션 효과를 호출한 후에만 유효합니다.

보호된 데이터 멤버

이름 설명
CAnimationGroup::m_nGroupID 애니메이션 그룹의 고유 식별자입니다.
CAnimationGroup::m_pParentController 이 그룹이 속한 애니메이션 컨트롤러에 대한 포인터입니다.

설명

애니메이션 그룹은 CAnimationController::AddAnimationObject를 사용하여 애니메이션 개체를 추가할 때 애니메이션 컨트롤러(CAnimationController)에 의해 자동으로 생성됩니다. 애니메이션 그룹은 일반적으로 애니메이션 그룹을 조작하기 위한 매개 변수로 사용하는 GroupID로 식별됩니다. GroupID는 새 애니메이션 그룹에 추가되는 첫 번째 애니메이션 개체에서 가져옵니다. 캡슐화된 애니메이션 스토리보드는 CAnimationController::AnimateGroup을 호출한 후에 만들어지고 공용 멤버 m_pStoryboard 통해 액세스할 수 있습니다.

상속 계층 구조

CAnimationGroup

요구 사항

헤더: afxanimationcontroller.h

CAnimationGroup::~CAnimationGroup

소멸자입니다. 애니메이션 그룹이 제거될 때 호출됩니다.

~CAnimationGroup();

CAnimationGroup::AddKeyframes

스토리보드에 키 프레임을 추가하는 도우미입니다.

void AddKeyframes(IUIAnimationStoryboard* pStoryboard, BOOL bAddDeep);

매개 변수

pStoryboard
스토리보드 COM 개체에 대한 포인터입니다.

bAddDeep
이 메서드가 다른 키 프레임에 의존하는 스토리보드 키 프레임에 추가할지 여부를 지정합니다.

CAnimationGroup::AddTransitions

스토리보드에 전환을 추가하는 도우미입니다.

void AddTransitions(
    IUIAnimationStoryboard* pStoryboard,
    BOOL bDependOnKeyframes);

매개 변수

pStoryboard
스토리보드 COM 개체에 대한 포인터입니다.

bDependOnKeyframes

CAnimationGroup::Animate

그룹에 애니메이션을 추가합니다.

BOOL Animate(
    IUIAnimationManager* pManager,
    IUIAnimationTimer* pTimer,
    BOOL bScheduleNow);

매개 변수

pManager
pTimerbScheduleNow

Return Value

메서드가 성공하면 TRUE입니다. 그렇지 않으면 FALSE입니다.

설명

이 메서드는 내부 스토리보드를 만들고, 전환을 만들고 적용하며, bScheduleNow가 TRUE인 경우 애니메이션을 예약합니다. bScheduleNow가 FALSE이면 일정을 호출하여 지정된 시간에 애니메이션을 시작해야 합니다.

CAnimationGroup::ApplyTransitions

애니메이션 개체에 전환을 적용합니다.

void ApplyTransitions();

설명

스토리보드가 만들어지지 않은 경우 이 메서드는 디버그 모드에서 ASSERTS를 사용합니다. 먼저 모든 전환을 만든 다음, "정적" 키 프레임(오프셋에 의존하는 키 프레임)을 추가하고, 키 프레임에 의존하지 않는 전환을 추가하고, 전환 및 기타 키 프레임에 따라 키 프레임을 추가하고, 마지막으로 키 프레임에 의존하는 전환을 추가합니다.

CAnimationGroup::CAnimationGroup

애니메이션 그룹을 생성합니다.

CAnimationGroup(CAnimationController* pParentController, UINT32 nGroupID);

매개 변수

pParentController
그룹을 만드는 애니메이션 컨트롤러에 대한 포인터입니다.

nGroupID
GroupID를 지정합니다.

CAnimationGroup::CreateTransitions

COM 전환 개체를 만드는 도우미입니다.

BOOL CreateTransitions();

Return Value

TRUE이면 메서드가 성공하고 그렇지 않으면 FALSE입니다.

CAnimationGroup::FindAnimationObject

지정된 애니메이션 변수를 포함하는 애니메이션 개체를 찾습니다.

CAnimationBaseObject* FindAnimationObject(IUIAnimationVariable* pVariable);

매개 변수

pVariable
애니메이션 변수에 대한 포인터입니다.

Return Value

애니메이션 개체에 대한 포인터이거나, 애니메이션 개체를 찾을 수 없는 경우 NULL입니다.

CAnimationGroup::GetGroupID

GroupID를 반환합니다.

UINT32 GetGroupID() const;

Return Value

그룹 식별자입니다.

CAnimationGroup::m_bAutoclearTransitions

그룹에 속한 애니메이션 개체에서 전환을 지우는 방법을 지정합니다. 이 멤버가 TRUE이면 애니메이션이 예약되면 전환이 자동으로 제거됩니다. 그렇지 않으면 전환을 수동으로 제거해야 합니다.

BOOL m_bAutoclearTransitions;

CAnimationGroup::m_bAutodestroyAnimationObjects

애니메이션 개체를 삭제하는 방법을 지정합니다. 이 매개 변수가 TRUE이면 그룹이 제거되면 애니메이션 개체가 자동으로 제거됩니다. 그렇지 않으면 애니메이션 개체를 수동으로 제거해야 합니다. 기본값은 FALSE입니다. 그룹에 속한 모든 애니메이션 개체가 연산자 new와 함께 동적으로 할당된 경우에만 이 값을 TRUE로 설정합니다.

BOOL m_bAutodestroyAnimationObjects;

CAnimationGroup::m_bAutodestroyKeyframes

키 프레임을 삭제하는 방법을 지정합니다. 이 값이 TRUE이면 모든 키 프레임이 제거되고 제거됩니다. 그렇지 않으면 목록에서만 제거됩니다. 기본값은 TRUE입니다.

BOOL m_bAutodestroyKeyframes;

CAnimationGroup::m_lstAnimationObjects

애니메이션 개체 목록을 포함합니다.

CObList m_lstAnimationObjects;

CAnimationGroup::m_lstKeyFrames

키 프레임 목록을 포함합니다.

CObList m_lstKeyFrames;

CAnimationGroup::m_nGroupID

애니메이션 그룹의 고유 식별자입니다.

UINT32 m_nGroupID;

CAnimationGroup::m_pParentController

이 그룹이 속한 애니메이션 컨트롤러에 대한 포인터입니다.

CAnimationController* m_pParentController;

CAnimationGroup::m_pStoryboard

애니메이션 스토리보드를 가리킵니다. 이 포인터는 애니메이션 효과를 호출한 후에만 유효합니다.

ATL::CComPtr<IUIAnimationStoryboard> m_pStoryboard;

CAnimationGroup::RemoveKeyframes

애니메이션 그룹에 속한 모든 키 프레임을 제거하고 선택적으로 삭제합니다.

void RemoveKeyframes();

설명

m_bAutodestroyKeyframes 멤버가 TRUE이면 키 프레임이 제거되고 제거되고, 그렇지 않으면 키 프레임이 내부 키 프레임 목록에서 제거됩니다.

CAnimationGroup::RemoveTransitions

애니메이션 그룹에 속한 애니메이션 개체에서 전환을 제거합니다.

void RemoveTransitions();

설명

m_bAutoclearTransitions 플래그가 TRUE로 설정된 경우 이 메서드는 그룹에 속한 모든 애니메이션 개체를 반복하고 CAnimationObject::ClearTransitions(FALSE)를 호출합니다.

CAnimationGroup::Schedule

지정된 시간에 애니메이션을 예약합니다.

BOOL Schedule(IUIAnimationTimer* pTimer, UI_ANIMATION_SECONDS time);

매개 변수

pTimer
애니메이션 타이머에 대한 포인터입니다.

time
애니메이션을 예약하는 시간을 지정합니다.

Return Value

메서드가 성공하면 TRUE입니다. 메서드가 실패하거나 bScheduleNow를 FALSE로 설정하여 Animate가 호출되지 않은 경우 FALSE입니다.

설명

지정된 시간에 애니메이션을 예약하려면 이 함수를 호출합니다. 먼저 bScheduleNow를 FALSE로 설정하여 Animate를 호출해야 합니다.

CAnimationGroup::SetAutodestroyTransitions

그룹에 속한 모든 애니메이션 개체가 자동으로 전환을 삭제하도록 지시합니다.

void SetAutodestroyTransitions(BOOL bAutoDestroy = TRUE);

매개 변수

bAutoDestroy
전환을 삭제하는 방법을 지정합니다.

설명

스택에 전환을 할당하는 경우에만 이 값을 FALSE로 설정합니다. 기본값은 TRUE이므로 새 연산자를 사용하여 전환 개체를 할당하는 것이 좋습니다.

참고 항목

클래스