Share via


CAnimationGroup-klasse

Opmerking

De Microsoft Foundation Classes-bibliotheek (MFC) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.

Hiermee wordt een animatiegroep geïmplementeerd, waarin een animatie-storyboard, animatieobjecten en overgangen worden gecombineerd om een animatie te definiëren.

Syntaxis

class CAnimationGroup;

Leden

Openbare constructors

Naam Description
CAnimationGroup::CAnimationGroup Een animatiegroep samenstellen.
CAnimationGroup::~CAnimationGroup De destructor. Wordt aangeroepen wanneer een animatiegroep wordt vernietigd.

Openbare methoden

Naam Description
CAnimationGroup::Animate Een groep animeren.
CAnimationGroup::ApplyTransitions Hiermee past u overgangen toe op animatieobjecten.
CAnimationGroup::FindAnimationObject Hiermee wordt een animatieobject gevonden dat de opgegeven animatievariabele bevat.
CAnimationGroup::GetGroupID Retourneert GroupID.
CAnimationGroup::RemoveKeyframes Verwijdert en verwijdert desgewenst alle sleutelframes die deel uitmaken van een animatiegroep.
CAnimationGroup::RemoveTransitions Hiermee verwijdert u overgangen van animatieobjecten die deel uitmaken van een animatiegroep.
CAnimationGroup::Schedule Hiermee plant u een animatie op het opgegeven tijdstip.
CAnimationGroup::SetAutodestroyTransitions Hiermee worden alle animatieobjecten die deel uitmaken van groep, automatisch overgangen vernietigd.

Beveiligde methoden

Naam Description
CAnimationGroup::AddKeyframes Een helper waarmee sleutelframes worden toegevoegd aan een storyboard.
CAnimationGroup::AddTransitions Een helper waarmee overgangen worden toegevoegd aan een storyboard.
CAnimationGroup::CreateTransitions Een helper waarmee COM-overgangsobjecten worden gemaakt.

Leden van openbare gegevens

Naam Description
CAnimationGroup::m_bAutoclearTransitions Hiermee geeft u op hoe overgangen worden gewist van animatieobjecten die deel uitmaken van groep. Als dit lid TRUE is, worden overgangen automatisch verwijderd wanneer een animatie is gepland. Anders moet u overgangen handmatig verwijderen.
CAnimationGroup::m_bAutodestroyAnimationObjects Hiermee geeft u op hoe animatie-objecten moeten worden vernietigd. Als deze parameter TRUE is, worden animatieobjecten automatisch vernietigd wanneer de groep wordt vernietigd. Anders moeten animatieobjecten handmatig worden vernietigd. De standaardwaarde is FALSE. Stel deze waarde alleen in op TRUE als alle animatieobjecten die deel uitmaken van de groep dynamisch worden toegewezen met een nieuwe operator.
CAnimationGroup::m_bAutodestroyKeyframes Hiermee geeft u op hoe sleutelframes moeten worden vernietigd. Als deze waarde TRUE is, worden alle sleutelframes verwijderd en vernietigd; anders worden ze alleen uit de lijst verwijderd. De standaardwaarde is WAAR.
CAnimationGroup::m_lstAnimationObjects Bevat een lijst met animatieobjecten.
CAnimationGroup::m_lstKeyFrames Bevat een lijst met sleutelframes.
CAnimationGroup::m_pStoryboard Verwijst naar animatie storyboard. Deze aanwijzer is alleen geldig na het aanroepen van animatie.

Beveiligde gegevensleden

Naam Description
CAnimationGroup::m_nGroupID Een unieke id van de animatiegroep.
CAnimationGroup::m_pParentController Een aanwijzer naar animatiecontroller waartoe deze groep behoort.

Opmerkingen

Animatiegroepen worden automatisch gemaakt door de animatiecontroller (CAnimationController) wanneer u animatieobjecten toevoegt met CAnimationController::AddAnimationObject. Een animatiegroep wordt geïdentificeerd door GroupID, die meestal wordt gebruikt als parameter voor het bewerken van animatiegroepen. De GroupID wordt opgehaald uit het eerste animatieobject dat wordt toegevoegd aan een nieuwe animatiegroep. Er wordt een ingekapseld animatie-storyboard gemaakt nadat u CAnimationController::AnimateGroup hebt aangeroepen en toegankelijk is via openbare leden m_pStoryboard.

Overnamehiërarchie

CAnimationGroup

Requirements

Header: afxanimationcontroller.h

CAnimationGroup::~CAnimationGroup

De destructor. Wordt aangeroepen wanneer een animatiegroep wordt vernietigd.

~CAnimationGroup();

CAnimationGroup::AddKeyframes

Een helper waarmee sleutelframes worden toegevoegd aan een storyboard.

void AddKeyframes(IUIAnimationStoryboard* pStoryboard, BOOL bAddDeep);

Parameterwaarden

pStoryboard
Een aanwijzer naar een STORYBOARD COM-object.

bAddDeep
Hiermee geeft u op of deze methode moet worden toegevoegd aan de storyboard-sleutelframes die afhankelijk zijn van andere sleutelframes.

CAnimationGroup::AddTransitions

Een helper waarmee overgangen worden toegevoegd aan een storyboard.

void AddTransitions(
    IUIAnimationStoryboard* pStoryboard,
    BOOL bDependOnKeyframes);

Parameterwaarden

pStoryboard
Een aanwijzer naar een STORYBOARD COM-object.

bDependOnKeyframes

CAnimationGroup::Animate

Een groep animeren.

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

Parameterwaarden

pManager
pTimerbScheduleNow

Retourwaarde

WAAR als de methode slaagt; anders ONWAAR.

Opmerkingen

Met deze methode maakt u een intern storyboard, maakt en past u overgangen toe en plant u een animatie als bScheduleNow WAAR is. Als bScheduleNow ONWAAR is, moet u Planning aanroepen om animatie op het opgegeven tijdstip te starten.

CAnimationGroup::ApplyTransitions

Hiermee past u overgangen toe op animatieobjecten.

void ApplyTransitions();

Opmerkingen

Deze methode ASSERTS in de foutopsporingsmodus als storyboard niet is gemaakt. Eerst worden alle overgangen gemaakt, vervolgens worden 'statische' sleutelframes toegevoegd (sleutelframes die afhankelijk zijn van offsets), worden overgangen toegevoegd die niet afhankelijk zijn van sleutelframes, sleutelframes toegevoegd, afhankelijk van overgangen en andere sleutelframes. Ten slotte worden overgangen toegevoegd die afhankelijk zijn van sleutelframes.

CAnimationGroup::CAnimationGroup

Een animatiegroep samenstellen.

CAnimationGroup(CAnimationController* pParentController, UINT32 nGroupID);

Parameterwaarden

pParentController
Een aanwijzer naar animatiecontroller waarmee een groep wordt gemaakt.

nGroupID
Hiermee geeft u GroupID.

CAnimationGroup::CreateTransitions

Een helper waarmee COM-overgangsobjecten worden gemaakt.

BOOL CreateTransitions();

Retourwaarde

TRUE is de methode slaagt, anders ONWAAR.

CAnimationGroup::FindAnimationObject

Hiermee wordt een animatieobject gevonden dat de opgegeven animatievariabele bevat.

CAnimationBaseObject* FindAnimationObject(IUIAnimationVariable* pVariable);

Parameterwaarden

pVariable
Een aanwijzer naar animatievariabele.

Retourwaarde

Een aanwijzer naar animatieobject of NULL als animatieobject niet is gevonden.

CAnimationGroup::GetGroupID

Retourneert GroupID.

UINT32 GetGroupID() const;

Retourwaarde

Een groeps-id.

CAnimationGroup::m_bAutoclearTransitions

Hiermee geeft u op hoe overgangen worden gewist van animatieobjecten die deel uitmaken van groep. Als dit lid TRUE is, worden overgangen automatisch verwijderd wanneer een animatie is gepland. Anders moet u overgangen handmatig verwijderen.

BOOL m_bAutoclearTransitions;

CAnimationGroup::m_bAutodestroyAnimationObjects

Hiermee geeft u op hoe animatie-objecten moeten worden vernietigd. Als deze parameter TRUE is, worden animatieobjecten automatisch vernietigd wanneer de groep wordt vernietigd. Anders moeten animatieobjecten handmatig worden vernietigd. De standaardwaarde is FALSE. Stel deze waarde alleen in op TRUE als alle animatieobjecten die deel uitmaken van de groep dynamisch worden toegewezen met een nieuwe operator.

BOOL m_bAutodestroyAnimationObjects;

CAnimationGroup::m_bAutodestroyKeyframes

Hiermee geeft u op hoe sleutelframes moeten worden vernietigd. Als deze waarde TRUE is, worden alle sleutelframes verwijderd en vernietigd; anders worden ze alleen uit de lijst verwijderd. De standaardwaarde is WAAR.

BOOL m_bAutodestroyKeyframes;

CAnimationGroup::m_lstAnimationObjects

Bevat een lijst met animatieobjecten.

CObList m_lstAnimationObjects;

CAnimationGroup::m_lstKeyFrames

Bevat een lijst met sleutelframes.

CObList m_lstKeyFrames;

CAnimationGroup::m_nGroupID

Een unieke id van de animatiegroep.

UINT32 m_nGroupID;

CAnimationGroup::m_pParentController

Een aanwijzer naar animatiecontroller waartoe deze groep behoort.

CAnimationController* m_pParentController;

CAnimationGroup::m_pStoryboard

Verwijst naar animatie storyboard. Deze aanwijzer is alleen geldig na het aanroepen van animatie.

ATL::CComPtr<IUIAnimationStoryboard> m_pStoryboard;

CAnimationGroup::RemoveKeyframes

Verwijdert en verwijdert desgewenst alle sleutelframes die deel uitmaken van een animatiegroep.

void RemoveKeyframes();

Opmerkingen

Als m_bAutodestroyKeyframes lid TRUE is, worden sleutelframes verwijderd en vernietigd, anders worden sleutelframes zojuist verwijderd uit de interne lijst met sleutelframes.

CAnimationGroup::RemoveTransitions

Hiermee verwijdert u overgangen van animatieobjecten die deel uitmaken van een animatiegroep.

void RemoveTransitions();

Opmerkingen

Als m_bAutoclearTransitions vlag is ingesteld op TRUE, loopt deze methode over alle animatieobjecten die deel uitmaken van de groep en roept CAnimationObject::ClearTransitions(FALSE) aan.

CAnimationGroup::Schedule

Hiermee plant u een animatie op het opgegeven tijdstip.

BOOL Schedule(IUIAnimationTimer* pTimer, UI_ANIMATION_SECONDS time);

Parameterwaarden

pTimer
Een aanwijzer naar animatietimer.

time
Hiermee geeft u de tijd om de animatie te plannen.

Retourwaarde

WAAR als de methode slaagt; FALSE als de methode mislukt of als Animate niet is aangeroepen met bScheduleNow ingesteld op FALSE.

Opmerkingen

Roep deze functie aan om een animatie te plannen op het opgegeven tijdstip. U moet eerst Animate aanroepen met bScheduleNow ingesteld op FALSE.

CAnimationGroup::SetAutodestroyTransitions

Hiermee worden alle animatieobjecten die deel uitmaken van groep, automatisch overgangen vernietigd.

void SetAutodestroyTransitions(BOOL bAutoDestroy = TRUE);

Parameterwaarden

bAutoDestroy
Hiermee geeft u op hoe overgangen moeten worden vernietigd.

Opmerkingen

Stel deze waarde alleen in op FALSE als u overgangen op de stack toewijst. De standaardwaarde is TRUE, daarom wordt het ten zeerste aanbevolen om overgangsobjecten toe te wijzen met behulp van een nieuwe operator.

Zie ook

Klassen