Freigeben über


CAnimationGroup-Klasse

Implementiert eine Animationsgruppe, die ein Animations-Storyboard, Animationsobjekte und Übergänge kombiniert, um eine Animation zu definieren.

Syntax

class CAnimationGroup;

Member

Öffentliche Konstruktoren

Name Beschreibung
CAnimationGroup::CAnimationGroup Erstellt eine Animationsgruppe.
CAnimationGroup::~CAnimationGroup Der Destruktor. Wird aufgerufen, wenn eine Animationsgruppe zerstört wird.

Öffentliche Methoden

Name Beschreibung
CAnimationGroup::Animate Animiert eine Gruppe.
CAnimationGroup::ApplyTransitions Wendet Übergänge auf Animationsobjekte an.
CAnimationGroup::FindAnimationObject Sucht ein Animationsobjekt, das die angegebene Animationsvariable enthält.
CAnimationGroup::GetGroupID Gibt GroupID zurück.
CAnimationGroup::RemoveKeyframes Entfernt und zerstört optional alle Keyframes, die zu einer Animationsgruppe gehören.
CAnimationGroup::RemoveTransitions Entfernt Übergänge aus Animationsobjekten, die zu einer Animationsgruppe gehören.
CAnimationGroup::Schedule Plant eine Animation zum angegebenen Zeitpunkt.
CAnimationGroup::SetAutodestroyTransitions Leitet alle Animationsobjekte, die zur Gruppe gehören, automatisch Übergänge ab.

Geschützte Methoden

Name Beschreibung
CAnimationGroup::AddKeyframes Ein Hilfsprogramm, das einem Storyboard Keyframes hinzufügt.
CAnimationGroup::AddTransitions Ein Hilfsprogramm, das Übergänge zu einem Storyboard hinzufügt.
CAnimationGroup::CreateTransitions Ein Hilfsprogramm, das COM-Übergangsobjekte erstellt.

Öffentliche Datenmember

Name Beschreibung
CAnimationGroup::m_bAutoclearTransitions Gibt an, wie Übergänge aus Animationsobjekten gelöscht werden, die zu einer Gruppe gehören. Wenn dieses Element WAHR ist, werden Übergänge automatisch entfernt, wenn eine Animation geplant wurde. Andernfalls müssen Sie Übergänge manuell entfernen.
CAnimationGroup::m_bAutodestroyAnimationObjects Gibt an, wie Animationsobjekte zerstört werden. Wenn dieser Parameter TRUE ist, werden Animationsobjekte automatisch zerstört, wenn die Gruppe zerstört wird. Andernfalls müssen Animationsobjekte manuell zerstört werden. Der Standardwert ist FALSCH. Legen Sie diesen Wert nur auf TRUE fest, wenn alle Animationsobjekte, die zur Gruppe gehören, dynamisch dem Operator neu zugeordnet werden.
CAnimationGroup::m_bAutodestroyKeyframes Gibt an, wie Keyframes zerstört werden. Wenn dieser Wert WAHR ist, werden alle Keyframes entfernt und zerstört. andernfalls werden sie nur aus der Liste entfernt. Der Standardwert ist TRUE.
CAnimationGroup::m_lstAnimationObjects Enthält eine Liste von Animationsobjekten.
CAnimationGroup::m_lstKeyFrames Enthält eine Liste von Keyframes.
CAnimationGroup::m_pStoryboard Verweist auf das Animations-Storyboard. Dieser Zeiger ist nur nach dem Aufruf von Animate gültig.

Geschützte Datenmember

Name Beschreibung
CAnimationGroup::m_nGroupID Ein eindeutiger Bezeichner der Animationsgruppe.
CAnimationGroup::m_pParentController Ein Zeiger auf den Animationscontroller, zu dem diese Gruppe gehört.

Hinweise

Animationsgruppen werden automatisch vom Animationscontroller (CAnimationController) erstellt, wenn Sie Animationsobjekte mit CAnimationController::AddAnimationObject hinzufügen. Eine Animationsgruppe wird durch GroupID identifiziert, die in der Regel als Parameter zum Bearbeiten von Animationsgruppen verwendet wird. Die GroupID stammt aus dem ersten Animationsobjekt, das einer neuen Animationsgruppe hinzugefügt wird. Ein gekapseltes Animations-Storyboard wird erstellt, nachdem Sie CAnimationController::AnimateGroup aufgerufen haben und über öffentliche Member-m_pStoryboard darauf zugreifen können.

Vererbungshierarchie

CAnimationGroup

Anforderungen

Header: afxanimationcontroller.h

CAnimationGroup::~CAnimationGroup

Der Destruktor. Wird aufgerufen, wenn eine Animationsgruppe zerstört wird.

~CAnimationGroup();

CAnimationGroup::AddKeyframes

Ein Hilfsprogramm, das einem Storyboard Keyframes hinzufügt.

void AddKeyframes(IUIAnimationStoryboard* pStoryboard, BOOL bAddDeep);

Parameter

pStoryboard
Ein Zeiger auf ein Storyboard-COM-Objekt.

bAddDeep
Gibt an, ob diese Methode den Storyboard-Keyframes hinzugefügt werden soll, die von anderen Keyframes abhängen.

CAnimationGroup::AddTransitions

Ein Hilfsprogramm, das Übergänge zu einem Storyboard hinzufügt.

void AddTransitions(
    IUIAnimationStoryboard* pStoryboard,
    BOOL bDependOnKeyframes);

Parameter

pStoryboard
Ein Zeiger auf ein Storyboard-COM-Objekt.

bDependOnKeyframes

CAnimationGroup::Animate

Animiert eine Gruppe.

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

Parameter

pManager
pTimerbScheduleNow

Rückgabewert

TRUE, wenn die Methode erfolgreich ist; andernfalls FALSE.

Hinweise

Diese Methode erstellt ein internes Storyboard, erstellt und wendet Übergänge an und plant eine Animation, wenn bScheduleNow TRUE ist. Wenn bScheduleNow FALSCH ist, müssen Sie "Schedule" aufrufen, um die Animation zu dem angegebenen Zeitpunkt zu starten.

CAnimationGroup::ApplyTransitions

Wendet Übergänge auf Animationsobjekte an.

void ApplyTransitions();

Hinweise

Diese Methode BESTÄTIGT im Debugmodus, wenn das Storyboard nicht erstellt wurde. Es erstellt zuerst alle Übergänge, fügt dann "statische" Keyframes (Keyframes, die von Offsets abhängen) hinzu, fügt Übergänge hinzu, die nicht von Keyframes abhängig sind, fügt Keyframes je nach Übergängen und anderen Keyframes hinzu und fügt zuletzt Übergänge hinzu, die von Keyframes abhängen.

CAnimationGroup::CAnimationGroup

Erstellt eine Animationsgruppe.

CAnimationGroup(CAnimationController* pParentController, UINT32 nGroupID);

Parameter

pParentController
Ein Zeiger auf animationscontroller, der eine Gruppe erstellt.

nGroupID
Gibt "GroupID" an.

CAnimationGroup::CreateTransitions

Ein Hilfsprogramm, das COM-Übergangsobjekte erstellt.

BOOL CreateTransitions();

Rückgabewert

TRUE ist die methode erfolgreich, andernfalls FALSE.

CAnimationGroup::FindAnimationObject

Sucht ein Animationsobjekt, das die angegebene Animationsvariable enthält.

CAnimationBaseObject* FindAnimationObject(IUIAnimationVariable* pVariable);

Parameter

pVariable
Ein Zeiger auf die Animationsvariable.

Rückgabewert

Ein Zeiger auf ein Animationsobjekt oder NULL, wenn das Animationsobjekt nicht gefunden wird.

CAnimationGroup::GetGroupID

Gibt GroupID zurück.

UINT32 GetGroupID() const;

Rückgabewert

Ein Gruppenbezeichner.

CAnimationGroup::m_bAutoclearTransitions

Gibt an, wie Übergänge aus Animationsobjekten gelöscht werden, die zu einer Gruppe gehören. Wenn dieses Element WAHR ist, werden Übergänge automatisch entfernt, wenn eine Animation geplant wurde. Andernfalls müssen Sie Übergänge manuell entfernen.

BOOL m_bAutoclearTransitions;

CAnimationGroup::m_bAutodestroyAnimationObjects

Gibt an, wie Animationsobjekte zerstört werden. Wenn dieser Parameter TRUE ist, werden Animationsobjekte automatisch zerstört, wenn die Gruppe zerstört wird. Andernfalls müssen Animationsobjekte manuell zerstört werden. Der Standardwert ist FALSCH. Legen Sie diesen Wert nur auf TRUE fest, wenn alle Animationsobjekte, die zur Gruppe gehören, dynamisch dem Operator neu zugeordnet werden.

BOOL m_bAutodestroyAnimationObjects;

CAnimationGroup::m_bAutodestroyKeyframes

Gibt an, wie Keyframes zerstört werden. Wenn dieser Wert WAHR ist, werden alle Keyframes entfernt und zerstört. andernfalls werden sie nur aus der Liste entfernt. Der Standardwert ist TRUE.

BOOL m_bAutodestroyKeyframes;

CAnimationGroup::m_lstAnimationObjects

Enthält eine Liste von Animationsobjekten.

CObList m_lstAnimationObjects;

CAnimationGroup::m_lstKeyFrames

Enthält eine Liste von Keyframes.

CObList m_lstKeyFrames;

CAnimationGroup::m_nGroupID

Ein eindeutiger Bezeichner der Animationsgruppe.

UINT32 m_nGroupID;

CAnimationGroup::m_pParentController

Ein Zeiger auf den Animationscontroller, zu dem diese Gruppe gehört.

CAnimationController* m_pParentController;

CAnimationGroup::m_pStoryboard

Verweist auf das Animations-Storyboard. Dieser Zeiger ist nur nach dem Aufruf von Animate gültig.

ATL::CComPtr<IUIAnimationStoryboard> m_pStoryboard;

CAnimationGroup::RemoveKeyframes

Entfernt und zerstört optional alle Keyframes, die zu einer Animationsgruppe gehören.

void RemoveKeyframes();

Hinweise

Wenn m_bAutodestroyKeyframes Mitglied WAHR ist, werden Keyframes entfernt und zerstört, andernfalls werden Keyframes einfach aus der internen Liste der Keyframes entfernt.

CAnimationGroup::RemoveTransitions

Entfernt Übergänge aus Animationsobjekten, die zu einer Animationsgruppe gehören.

void RemoveTransitions();

Hinweise

Wenn m_bAutoclearTransitions Flag auf TRUE festgelegt ist, durchläuft diese Methode alle Animationsobjekte, die zur Gruppe gehören, und ruft CAnimationObject::ClearTransitions(FALSE) auf.

CAnimationGroup::Schedule

Plant eine Animation zum angegebenen Zeitpunkt.

BOOL Schedule(IUIAnimationTimer* pTimer, UI_ANIMATION_SECONDS time);

Parameter

pTimer
Ein Zeiger auf den Animationstimer.

time
Gibt die Zeit zum Planen der Animation an.

Rückgabewert

TRUE, wenn die Methode erfolgreich ist; FALSE, wenn die Methode fehlschlägt oder Animate nicht aufgerufen wurde, wobei bScheduleNow auf FALSE festgelegt ist.

Hinweise

Rufen Sie diese Funktion auf, um eine Animation zum angegebenen Zeitpunkt zu planen. Sie müssen Animate aufrufen, wobei bScheduleNow zuerst auf FALSE festgelegt ist.

CAnimationGroup::SetAutodestroyTransitions

Leitet alle Animationsobjekte, die zur Gruppe gehören, automatisch Übergänge ab.

void SetAutodestroyTransitions(BOOL bAutoDestroy = TRUE);

Parameter

bAutoDestroy
Gibt an, wie Übergänge zerstört werden.

Hinweise

Legen Sie diesen Wert nur auf FALSE fest, wenn Sie Übergänge im Stapel zuweisen. Der Standardwert ist TRUE, daher wird dringend empfohlen, Übergangsobjekte mithilfe von Operator neu zuzuweisen.

Siehe auch

Klassen