Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
Opmerking
De Microsoft Foundation Classes-bibliotheek (MFC) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.
De basisklasse voor alle animatieobjecten.
Syntaxis
class CAnimationBaseObject : public CObject;
Leden
Openbare constructors
| Naam | Description |
|---|---|
| CAnimationBaseObject::CAnimationBaseObject | Overbelast. Maakt een animatieobject. |
| CAnimationBaseObject::~CAnimationBaseObject | De destructor. Wordt aangeroepen wanneer een animatieobject wordt vernietigd. |
Openbare methoden
| Naam | Description |
|---|---|
| CAnimationBaseObject::ApplyTransitions | Hiermee worden overgangen toegevoegd aan storyboard met ingekapselde animatievariabele. |
| CAnimationBaseObject::ClearTransitions | Hiermee verwijdert u alle gerelateerde overgangen. |
| CAnimationBaseObject::ContainsVariable | Bepaalt of een animatieobject een bepaalde animatievariabele bevat. |
| CAnimationBaseObject::CreateTransitions | Hiermee maakt u overgangen die zijn gekoppeld aan een animatieobject. |
| CAnimationBaseObject::D etachFromController | Een animatieobject loskoppelen van de bovenliggende animatiecontroller. |
| CAnimationBaseObject::EnableIntegerValueChangedEvent | Hiermee stelt u de gebeurtenis-handler Integer Value Changed in. |
| CAnimationBaseObject::EnableValueChangedEvent | Hiermee stelt u de gebeurtenis-handler Waarde gewijzigd in. |
| CAnimationBaseObject::GetAutodestroyTransitions | Hiermee wordt aangegeven of gerelateerde overgang automatisch wordt vernietigd. |
| CAnimationBaseObject::GetGroupID | Retourneert de huidige groeps-id. |
| CAnimationBaseObject::GetObjectID | Retourneert de huidige object-id. |
| CAnimationBaseObject::GetUserData | Retourneert door de gebruiker gedefinieerde gegevens. |
| CAnimationBaseObject::SetAutodestroyTransitions | Hiermee stelt u een vlag in om overgangen automatisch te vernietigen. |
| CAnimationBaseObject::SetID | Hiermee stelt u nieuwe id's in. |
| CAnimationBaseObject::SetUserData | Hiermee stelt u door de gebruiker gedefinieerde gegevens in. |
Beveiligde methoden
| Naam | Description |
|---|---|
| CAnimationBaseObject::GetAnimationVariableList | Hiermee worden aanwijzers verzameld naar ingesloten animatievariabelen. |
| CAnimationBaseObject::SetParentAnimationObjects | Hiermee wordt een relatie tot stand brengt tussen animatievariabelen, opgenomen in een animatieobject en de bijbehorende container. |
Beveiligde gegevensleden
| Naam | Description |
|---|---|
| CAnimationBaseObject::m_bAutodestroyTransitions | Hiermee geeft u op of gerelateerde overgangen automatisch moeten worden vernietigd. |
| CAnimationBaseObject::m_dwUserData | Slaat door de gebruiker gedefinieerde gegevens op. |
| CAnimationBaseObject::m_nGroupID | Hiermee geeft u de groeps-id van het animatieobject. |
| CAnimationBaseObject::m_nObjectID | Hiermee geeft u de object-id van het animatieobject. |
| CAnimationBaseObject::m_pParentController | Een aanwijzer naar de bovenliggende animatiecontroller. |
Opmerkingen
Deze klasse implementeert basismethoden voor alle animatieobjecten. Een animatieobject kan een waarde, punt, grootte, rechthoek of kleur in een toepassing vertegenwoordigen, evenals elke aangepaste entiteit. Animatieobjecten worden opgeslagen in animatiegroepen (zie CAnimationGroup). Elke groep kan afzonderlijk worden geanimeerd en kan worden behandeld als een analogie van storyboard. Een animatieobject bevat een of meer animatievariabelen (zie CAnimationVariable), afhankelijk van de logische weergave. CAnimationRect bevat bijvoorbeeld vier animatievariabelen: één variabele voor elke zijde van de rechthoek. Elke animatieobjectklasse toont overbelaste AddTransition-methode, die moet worden gebruikt om overgangen toe te passen op ingekapselde animatievariabelen. Een animatieobject kan worden geïdentificeerd op object-id (optioneel) en op groeps-id. Een groeps-id is nodig om een animatieobject te plaatsen in de juiste groep, maar als er geen groeps-id is opgegeven, wordt een object in de standaardgroep met id 0 geplaatst. Als u SetID aanroept met een andere GroupID, wordt een animatieobject verplaatst naar een andere groep (indien nodig wordt er een nieuwe groep gemaakt).
Overnamehiërarchie
CAnimationBaseObject
Requirements
Header: afxanimationcontroller.h
CAnimationBaseObject::~CAnimationBaseObject
De destructor. Wordt aangeroepen wanneer een animatieobject wordt vernietigd.
virtual ~CAnimationBaseObject();
CAnimationBaseObject::ApplyTransitions
Hiermee worden overgangen toegevoegd aan storyboard met ingekapselde animatievariabele.
virtual BOOL ApplyTransitions(
IUIAnimationStoryboard* pStoryboard,
BOOL bDependOnKeyframes);
Parameterwaarden
pStoryboard
Een aanwijzer naar een storyboard.
bDependOnKeyframes
Als ONWAAR is, worden met deze methode alleen de overgangen toegevoegd die niet afhankelijk zijn van sleutelframes.
Retourwaarde
WAAR als overgangen zijn toegevoegd.
Opmerkingen
Hiermee worden gerelateerde overgangen, die zijn toegevoegd met AddTransition (overbelaste methoden in afgeleide klassen), toegevoegd aan storyboard.
CAnimationBaseObject::CAnimationBaseObject
Maakt een animatieobject.
CAnimationBaseObject();
CAnimationBaseObject(
UINT32 nGroupID,
UINT32 nObjectID = (UINT32)-1,
DWORD dwUserData = 0);
Parameterwaarden
nGroupID
Hiermee geeft u groeps-id.
nObjectID
Hiermee geeft u object-id.
dwUserData
Door de gebruiker gedefinieerde gegevens, die kunnen worden gekoppeld aan animatieobject en later tijdens runtime kunnen worden opgehaald.
Opmerkingen
Hiermee maakt u een animatieobject en wijst u standaardobject-id (0) en groeps-id (0) toe.
CAnimationBaseObject::ClearTransitions
Hiermee verwijdert u alle gerelateerde overgangen.
virtual void ClearTransitions(BOOL bAutodestroy);
Parameterwaarden
bAutodestroy
Hiermee geeft u op of overgangsobjecten automatisch moeten worden vernietigd of alleen uit de gerelateerde lijst moeten worden verwijderd.
Opmerkingen
Verwijdert alle gerelateerde overgangen en vernietigt ze als bAutodestroy of m_bAutodestroyTransitions vlag WAAR is. Overgangen moeten alleen automatisch worden vernietigd als ze niet op de stapel worden toegewezen. Als de bovenstaande vlaggen ONWAAR zijn, worden overgangen zojuist verwijderd uit de interne lijst met gerelateerde overgangen.
CAnimationBaseObject::ContainsVariable
Bepaalt of een animatieobject een bepaalde animatievariabele bevat.
virtual BOOL ContainsVariable(IUIAnimationVariable* pVariable);
Parameterwaarden
pVariable
Een aanwijzer naar animatievariabele.
Retourwaarde
WAAR als de animatievariabele is opgenomen in het animatieobject; anders ONWAAR.
Opmerkingen
Deze methode kan worden gebruikt om te bepalen of een animatievariabele die is opgegeven door pVariable zich in een animatieobject bevindt. Een animatieobject kan, afhankelijk van het type, verschillende animatievariabelen bevatten. CAnimationColor bevat bijvoorbeeld drie variabelen, één voor elk kleuronderdeel (rood, groen en blauw). Wanneer een waarde van de animatievariabele is gewijzigd, verzendt de Windows Animation-API ValueChanged- of IntegerValueChanged-gebeurtenissen (indien ingeschakeld) en is de parameter van deze gebeurtenis een verwijzing naar interface-IUIAnimationVariable van de animatievariabele. Deze methode helpt bij het verkrijgen van een aanwijzer naar animatie van een aanwijzer naar een ingesloten COM-object.
CAnimationBaseObject::CreateTransitions
Hiermee maakt u overgangen die zijn gekoppeld aan een animatieobject.
BOOL CreateTransitions();
Retourwaarde
WAAR als overgangen zijn gemaakt; anders ONWAAR.
Opmerkingen
Lussen over een lijst met animatievariabelen die zijn ingekapseld in een afgeleid animatieobject en maakt overgangen die zijn gekoppeld aan elke animatievariabele.
CAnimationBaseObject::D etachFromController
Een animatieobject loskoppelen van de bovenliggende animatiecontroller.
void DetachFromController();
Opmerkingen
Deze methode wordt intern gebruikt.
CAnimationBaseObject::EnableIntegerValueChangedEvent
Hiermee stelt u de gebeurtenis-handler Integer Value Changed in.
virtual void EnableIntegerValueChangedEvent(
CAnimationController* pController,
BOOL bEnable);
Parameterwaarden
pController
Een aanwijzer naar een bovenliggende controller.
bEnable
Hiermee geeft u op of de gebeurtenis Integerwaarde gewijzigd moet worden of uitgeschakeld.
Opmerkingen
Als de gebeurtenis-handler Integer Value Changed is ingeschakeld, kunt u deze gebeurtenis afhandelen in de CAnimationController::OnAnimationIntegerValueChanged-methode, die moet worden overschreven in een CAnimationController-afgeleide klasse. Deze methode wordt aangeroepen telkens wanneer de waarde van het animatie-geheel getal is gewijzigd.
CAnimationBaseObject::EnableValueChangedEvent
Hiermee stelt u de gebeurtenis-handler Waarde gewijzigd in.
virtual void EnableValueChangedEvent(
CAnimationController* pController,
BOOL bEnable);
Parameterwaarden
pController
Een aanwijzer naar een bovenliggende controller.
bEnable
Hiermee geeft u op of de gebeurtenis Waarde gewijzigd moet worden in- of uitgeschakeld.
Opmerkingen
Als de gebeurtenis-handler Waarde gewijzigd is ingeschakeld, kunt u deze gebeurtenis afhandelen in de CAnimationController::OnAnimationValueChanged-methode, die moet worden overschreven in een CAnimationController-afgeleide klasse. Deze methode wordt aangeroepen telkens wanneer de animatiewaarde is gewijzigd.
CAnimationBaseObject::GetAnimationVariableList
Hiermee worden aanwijzers verzameld naar ingesloten animatievariabelen.
virtual void GetAnimationVariableList(
CList<CAnimationVariable*,
CAnimationVariable*>& list) = 0;
Parameterwaarden
list
Een lijst die moet worden gevuld met animatievariabelen in een animatieobject.
Opmerkingen
Deze pure virtuele methode moet worden overschreven in een afgeleide klasse. Een animatieobject, afhankelijk van het type, bevat een of meer animatievariabelen. CAnimationPoint bevat bijvoorbeeld twee variabelen voor respectievelijk X- en Y-coördinaten. Met de basisklasse CAnimationBaseObject worden enkele algemene methoden geïmplementeerd, die reageren op een lijst met animatievariabelen: ApplyTransitions, ClearTransitions, EnableValueChangedEvent, EnableIntegerValueChangedEvent. Deze methoden roepen GetAnimationVariableList aan, die is ingevuld in een afgeleide klasse met werkelijke animatievariabelen in een bepaald animatieobject, waarna de lijst wordt doorlopen en de benodigde acties worden uitgevoerd. Als u een aangepast animatieobject maakt, moet u toevoegen om alle animatievariabelen in dat object weer te geven.
CAnimationBaseObject::GetAutodestroyTransitions
Hiermee wordt aangegeven of gerelateerde overgang automatisch wordt vernietigd.
BOOL GetAutodestroyTransitions() const;
Retourwaarde
Indien WAAR, worden gerelateerde overgangen automatisch vernietigd; als ONWAAR, moet de toewijzing van overgangsobjecten ongedaan worden gemaakt door de toepassing aan te roepen.
Opmerkingen
Deze vlag is standaard TRUE. Stel deze vlag alleen in als u de toewijzing van de overgang op de stack en/of overgangen ongedaan hebt gemaakt door de aanroepende toepassing.
CAnimationBaseObject::GetGroupID
Retourneert de huidige groeps-id.
UINT32 GetGroupID() const;
Retourwaarde
Huidige groeps-id.
Opmerkingen
Gebruik deze methode om groeps-id op te halen. Het is 0 als groeps-id niet expliciet is ingesteld in constructor of met SetID.
CAnimationBaseObject::GetObjectID
Retourneert de huidige object-id.
UINT32 GetObjectID() const;
Retourwaarde
Huidige object-id.
Opmerkingen
Gebruik deze methode om object-id op te halen. Het is 0 als object-id niet expliciet is ingesteld in constructor of met SetID.
CAnimationBaseObject::GetUserData
Retourneert door de gebruiker gedefinieerde gegevens.
DWORD GetUserData() const;
Retourwaarde
Een waarde van aangepaste gegevens.
Opmerkingen
Roep deze methode aan om de aangepaste gegevens op te halen tijdens runtime. De geretourneerde waarde is 0 als deze niet expliciet is geïnitialiseerd in constructor of met SetUserData.
CAnimationBaseObject::m_bAutodestroyTransitions
Hiermee geeft u op of gerelateerde overgangen automatisch moeten worden vernietigd.
BOOL m_bAutodestroyTransitions;
CAnimationBaseObject::m_dwUserData
Slaat door de gebruiker gedefinieerde gegevens op.
DWORD m_dwUserData;
CAnimationBaseObject::m_nGroupID
Hiermee geeft u de groeps-id van het animatieobject.
UINT32 m_nGroupID;
CAnimationBaseObject::m_nObjectID
Hiermee geeft u de object-id van het animatieobject.
UINT32 m_nObjectID;
CAnimationBaseObject::m_pParentController
Een aanwijzer naar de bovenliggende animatiecontroller.
CAnimationController* m_pParentController;
CAnimationBaseObject::SetAutodestroyTransitions
Hiermee stelt u een vlag in om overgangen automatisch te vernietigen.
void SetAutodestroyTransitions(BOOL bValue);
Parameterwaarden
bValue
Hiermee geeft u de vlag voor automatisch vernietigen.
Opmerkingen
Stel deze vlag alleen in als u overgangsobjecten hebt toegewezen met behulp van een nieuwe operator. Als om een of andere reden overgangsobjecten op de stapel worden toegewezen, moet de vlag voor automatisch vernietigen ONWAAR zijn. Deze vlag is standaard TRUE.
CAnimationBaseObject::SetID
Hiermee stelt u nieuwe id's in.
void SetID(
UINT32 nObjectID,
UINT32 nGroupID = 0);
Parameterwaarden
nObjectID
Hiermee geeft u nieuwe object-id.
nGroupID
Hiermee geeft u nieuwe groeps-id.
Opmerkingen
Hiermee kunt u object-id en groeps-id wijzigen. Als de nieuwe groeps-id verschilt van de huidige id, wordt een animatieobject verplaatst naar een andere groep (indien nodig wordt er een nieuwe groep gemaakt).
CAnimationBaseObject::SetParentAnimationObjects
Hiermee wordt een relatie tot stand brengt tussen animatievariabelen, opgenomen in een animatieobject en de bijbehorende container.
virtual void SetParentAnimationObjects();
Opmerkingen
Deze helper kan worden gebruikt om een relatie tot stand te brengen tussen animatievariabelen in een animatieobject en de bijbehorende container. Deze lus over animatievariabelen en stelt een terugwijzer in op een bovenliggend animatieobject op elke animatievariabele. In de huidige implementatie wordt de werkelijke relatie tot stand gebracht in CAnimationBaseObject::ApplyTransitions, daarom worden backpointers pas ingesteld als u CAnimationGroup::Animate aanroept. Het kan handig zijn om de relatie te kennen wanneer u gebeurtenissen verwerkt en een bovenliggend animatieobject moet ophalen uit CAnimationVariable. Gebruik CAnimationVariable::GetParentAnimationObject.
CAnimationBaseObject::SetUserData
Hiermee stelt u door de gebruiker gedefinieerde gegevens in.
void SetUserData (DWORD dwUserData);
Parameterwaarden
dwUserData
Hiermee geeft u de aangepaste gegevens.
Opmerkingen
Gebruik deze methode om een aangepaste gegevens te koppelen aan een animatieobject. Deze gegevens kunnen later tijdens runtime worden opgehaald door GetUserData.