Share via


Klasse CAnimationController

Opmerking

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

Implementeert de animatiecontroller, die een centrale interface biedt voor het maken en beheren van animaties.

Syntaxis

class CAnimationController : public CObject;

Leden

Openbare constructors

Naam Description
CAnimationController::CAnimationController Maakt een animatiecontroller.
CAnimationController::~CAnimationController De destructor. Wordt aangeroepen wanneer het object van de animatiecontroller wordt vernietigd.

Openbare methoden

Naam Description
CAnimationController::AddAnimationObject Hiermee voegt u een animatieobject toe aan een groep die deel uitmaakt van de animatiecontroller.
CAnimationController::AddKeyframeToGroup Hiermee voegt u een sleutelframe toe aan groep.
CAnimationController::AnimateGroup Bereidt een groep voor om animatie uit te voeren en plant deze desgewenst.
CAnimationController::CleanUpGroup Overbelast. Aangeroepen door het framework om de groep op te schonen wanneer animatie is gepland.
CAnimationController::CreateKeyframe Overbelast. Hiermee maakt u een sleutelframe dat afhankelijk is van de overgang en voegt dit toe aan de opgegeven groep.
CAnimationController::EnableAnimationManagerEvent Hiermee stelt u een handler in of publiceert deze om aan te roepen wanneer de status van animatiebeheer verandert.
CAnimationController::EnableAnimationTimerEventHandler Hiermee stelt u een handler in of publiceert u een handler voor timing-gebeurtenissen en handler voor tijdsupdates.
CAnimationController::EnablePriorityComparisonHandler Hiermee stelt u de prioriteitsvergelijkingshandler in om te bepalen of een gepland storyboard kan worden geannuleerd, afgesloten, ingekort of gecomprimeerd.
CAnimationController::EnableStoryboardEventHandler Hiermee stelt u een handler in of publiceert u een handler voor de storyboardstatus en update-gebeurtenissen.
CAnimationController::FindAnimationGroup Overbelast. Hiermee vindt u een animatiegroep op het storyboard.
CAnimationController::FindAnimationObject Hiermee zoekt u animatieobject met een opgegeven animatievariabele.
CAnimationController::GetKeyframeStoryboardStart Retourneert een sleutelframe dat het begin van storyboard identificeert.
CAnimationController::GetUIAnimationManager Biedt toegang tot ingekapseld IUIAnimationManager-object.
CAnimationController::GetUIAnimationTimer Biedt toegang tot ingekapseld IUIAnimationTimer-object.
CAnimationController::GetUITransitionFactory Een aanwijzer naar de interface IUIAnimationTransitionFactory of NULL als het maken van de overgangsbibliotheek is mislukt.
CAnimationController::GetUITransitionLibrary Biedt toegang tot ingekapseld IUIAnimationTransitionLibrary-object.
CAnimationController::IsAnimationInProgress Hiermee wordt aangegeven of ten minste één groep animaties afspeelt.
CAnimationController::IsValid Geeft aan of de animatiecontroller geldig is.
CAnimationController::OnAnimationIntegerValueChanged Aangeroepen door het framework wanneer de waarde van de animatievariabele geheel getal is gewijzigd.
CAnimationController::OnAnimationManagerStatusChanged Aangeroepen door het framework als reactie op statuswijzigingsgebeurtenis vanuit animatiebeheer.
CAnimationController::OnAnimationTimerPostUpdate Aangeroepen door het framework nadat een animatie-update is voltooid.
CAnimationController::OnAnimationTimerPreUpdate Aangeroepen door het framework voordat een animatie-update begint.
CAnimationController::OnAnimationTimerRenderingTooSlow Aangeroepen door het framework wanneer de renderingframesnelheid voor een animatie onder een minimale gewenste framesnelheid valt.
CAnimationController::OnAnimationValueChanged Aangeroepen door het framework wanneer de waarde van de animatievariabele is gewijzigd.
CAnimationController::OnBeforeAnimationStart Aangeroepen door het framework vlak voordat de animatie wordt gepland.
CAnimationController::OnHasPriorityCancel Wordt aangeroepen door het framework om planningsconflicten op te lossen.
CAnimationController::OnHasPriorityCompress Wordt aangeroepen door het framework om planningsconflicten op te lossen.
CAnimationController::OnHasPriorityConclude Wordt aangeroepen door het framework om planningsconflicten op te lossen.
CAnimationController::OnHasPriorityTrim Wordt aangeroepen door het framework om planningsconflicten op te lossen.
CAnimationController::OnStoryboardStatusChanged Aangeroepen door het framework wanneer de storyboardstatus is gewijzigd.
CAnimationController::OnStoryboardUpdated Aangeroepen door het framework wanneer storyboard is bijgewerkt.
CAnimationController::RemoveAllAnimationGroups Hiermee verwijdert u alle animatiegroepen uit de animatiecontroller.
CAnimationController::RemoveAnimationGroup Hiermee verwijdert u een animatiegroep met de opgegeven id van de animatiecontroller.
CAnimationController::RemoveAnimationObject Een animatieobject verwijderen uit de animatiecontroller.
CAnimationController::RemoveTransitions Hiermee verwijdert u overgangen van animatieobjecten die deel uitmaken van de opgegeven groep.
CAnimationController::ScheduleGroup Hiermee wordt een animatie gepland.
CAnimationController::SetRelatedWnd Hiermee wordt een relatie tussen de animatiecontroller en een venster tot stand brengen.
CAnimationController::UpdateAnimationManager Hiermee wordt de animatiebeheerder om de waarden van alle animatievariabelen bij te werken.

Beveiligde methoden

Naam Description
CAnimationController::CleanUpGroup Overbelast. Een helper die de groep opschoont.
CAnimationController::OnAfterSchedule Aangeroepen door het framework wanneer een animatie voor de opgegeven groep zojuist is gepland.

Beveiligde gegevensleden

Naam Description
CAnimationController::gkeyframeStoryboardStart Een sleutelframe dat het begin van storyboard vertegenwoordigt.
CAnimationController::m_bIsValid Hiermee geeft u op of een animatiecontroller geldig is of niet. Dit lid is ingesteld op FALSE als het huidige besturingssysteem geen ondersteuning biedt voor de Windows Animatie-API.
CAnimationController::m_lstAnimationGroups Een lijst met animatiegroepen die deel uitmaken van deze animatiecontroller.
CAnimationController::m_pAnimationManager Hiermee wordt een aanwijzer opgeslagen naar COM-object Animatiebeheer.
CAnimationController::m_pAnimationTimer Hiermee wordt een aanwijzer opgeslagen naar het COM-object Animatietimer.
CAnimationController::m_pRelatedWnd Een aanwijzer naar een gerelateerd CWnd-object, dat automatisch opnieuw kan worden getekend wanneer de status van animatiebeheer is gewijzigd of een gebeurtenis na het bijwerken is opgetreden. Kan NULL zijn.
CAnimationController::m_pTransitionFactory Hiermee wordt een aanwijzer opgeslagen naar het COM-object Transition Factory.
CAnimationController::m_pTransitionLibrary Hiermee wordt een aanwijzer opgeslagen naar het COM-object transition library.

Opmerkingen

De klasse CAnimationController is de sleutelklasse waarmee animaties worden beheerd. U kunt een of meer exemplaren van de animatiecontroller maken in een toepassing en eventueel een exemplaar van een animatiecontroller verbinden met een CWnd-object met behulp van CAnimationController::SetRelatedWnd. Deze verbinding is vereist om WM_PAINT berichten automatisch naar het gerelateerde venster te verzenden wanneer de status van animatiebeheer is gewijzigd of de animatietimer is bijgewerkt. Als u deze relatie niet inschakelt, moet u een venster opnieuw tekenen waarin handmatig een animatie wordt weergegeven. Voor dit doel kunt u een klasse afleiden van CAnimationController en onAnimationManagerStatusChanged en/of OnAnimationTimerPostUpdate negeren en een of meer vensters indien nodig ongeldig maken.

Overnamehiërarchie

CObject

CAnimationController

Requirements

Header: afxanimationcontroller.h

CAnimationController::~CAnimationController

De destructor. Wordt aangeroepen wanneer het object van de animatiecontroller wordt vernietigd.

virtual ~CAnimationController(void);

CAnimationController::AddAnimationObject

Hiermee voegt u een animatieobject toe aan een groep die deel uitmaakt van de animatiecontroller.

CAnimationGroup* AddAnimationObject(CAnimationBaseObject* pObject);

Parameterwaarden

pObject-
Een aanwijzer naar een animatieobject.

Retourwaarde

Een aanwijzer naar een bestaande of nieuwe animatiegroep waar pObject is toegevoegd als de functie slaagt; NULL als pObject al is toegevoegd aan een groep die deel uitmaakt van een andere animatiecontroller.

Opmerkingen

Roep deze methode aan om een animatieobject toe te voegen aan de animatiecontroller. Een object wordt toegevoegd aan een groep volgens de GroupID van het object (zie CAnimationBaseObject::SetID). De animatiecontroller maakt een nieuwe groep als dit het eerste object is dat wordt toegevoegd met de opgegeven GroupID. Een animatieobject kan alleen worden toegevoegd aan één animatiecontroller. Als u een object aan een andere controller wilt toevoegen, roept u Eerst RemoveAnimationObject aan. Als u SetID aanroept met een nieuwe GroupID voor een object dat al aan een groep is toegevoegd, wordt het object verwijderd uit de oude groep en toegevoegd aan een andere groep met opgegeven id.

CAnimationController::AddKeyframeToGroup

Hiermee voegt u een sleutelframe toe aan groep.

BOOL AddKeyframeToGroup(
    UINT32 nGroupID,
    CBaseKeyFrame* pKeyframe);

Parameterwaarden

nGroupID
Hiermee geeft u groeps-id.

pKeyframe
Een aanwijzer naar een sleutelframe.

Retourwaarde

WAAR als de functie slaagt; anders ONWAAR.

Opmerkingen

Meestal hoeft u deze methode niet aan te roepen, gebruikt u in plaats daarvan CAnimationController::CreateKeyframe, waarmee het gemaakte sleutelframe automatisch aan een groep wordt gemaakt en toegevoegd.

CAnimationController::AnimateGroup

Bereidt een groep voor om animatie uit te voeren en plant deze desgewenst.

BOOL AnimateGroup(
    UINT32 nGroupID,
    BOOL bScheduleNow = TRUE);

Parameterwaarden

nGroupID
Hiermee geeft u GroupID.

bScheduleNow
Hiermee geeft u op of animatie direct moet worden uitgevoerd.

Retourwaarde

WAAR als de animatie is gepland en uitgevoerd.

Opmerkingen

Met deze methode wordt het werkelijke werk uitgevoerd om storyboard te maken, animatievariabelen toe te voegen, overgangen toe te passen en sleutelframes in te stellen. Het is mogelijk om de planning uit te stellen als u bScheduleNow instelt op FALSE. In dit geval bevat de opgegeven groep een storyboard dat is ingesteld voor animatie. Op dat moment kunt u gebeurtenissen instellen voor het storyboard en animatievariabelen. Wanneer u de animatie-aanroep CAnimationController::ScheduleGroup daadwerkelijk moet uitvoeren.

CAnimationController::CAnimationController

Maakt een animatiecontroller.

CAnimationController(void);

CAnimationController::CleanUpGroup

Aangeroepen door het framework om de groep op te schonen wanneer animatie is gepland.

void CleanUpGroup(UINT32 nGroupID);
void CleanUpGroup(CAnimationGroup* pGroup);

Parameterwaarden

nGroupID
Hiermee geeft u GroupID.

pGroup
Een aanwijzer naar animatiegroep die moet worden opgeschoond.

Opmerkingen

Met deze methode worden alle overgangen en sleutelframes uit de opgegeven groep verwijderd, omdat deze niet relevant zijn nadat een animatie is gepland.

CAnimationController::CreateKeyframe

Hiermee maakt u een sleutelframe dat afhankelijk is van de overgang en voegt dit toe aan de opgegeven groep.

CKeyFrame* CreateKeyframe(
    UINT32 nGroupID,
    CBaseTransition* pTransition);

CKeyFrame* CreateKeyframe(
    UINT32 nGroupID,
    CBaseKeyFrame* pKeyframe,
    UI_ANIMATION_SECONDS offset = 0.0);

Parameterwaarden

nGroupID
Hiermee geeft u de groeps-id op waarvoor het sleutelframe wordt gemaakt.

pTransition
Een aanwijzer naar overgang. Keyframe wordt na deze overgang ingevoegd in storyboard.

pKeyframe
Een aanwijzer naar het basissleutelframe voor dit sleutelframe.

afstand
Verschuiving in seconden van het basissleutelframe dat is opgegeven door pKeyframe.

Retourwaarde

Een aanwijzer naar het zojuist gemaakte sleutelframe als de functie slaagt.

Opmerkingen

U kunt de geretourneerde aanwijzer opslaan en andere sleutelframes baseren op het zojuist gemaakte sleutelframe (zie de tweede overbelasting). Het is mogelijk om overgangen te starten bij keyframes- zie CBaseTransition::SetKeyframes. U hoeft op deze manier geen sleutelframes te verwijderen, omdat ze automatisch worden verwijderd door animatiegroepen. Wees voorzichtig bij het maken van sleutelframes op basis van andere sleutelframes en overgangen en vermijd kringverwijzingen.

CAnimationController::EnableAnimationManagerEvent

Hiermee stelt u een handler in of publiceert deze om aan te roepen wanneer de status van animatiebeheer verandert.

virtual BOOL EnableAnimationManagerEvent(BOOL bEnable = TRUE);

Parameterwaarden

bEnable
Hiermee geeft u op of u een handler wilt instellen of vrijgeven.

Retourwaarde

TRUE als de handler is ingesteld of vrijgegeven.

Opmerkingen

Wanneer een handler is ingesteld (ingeschakeld) roept Windows-animatie OnAnimationManagerStatusChanged aan wanneer de status van animatiebeheer verandert.

CAnimationController::EnableAnimationTimerEventHandler

Hiermee stelt u een handler in of publiceert u een handler voor timing-gebeurtenissen en handler voor tijdsupdates.

virtual BOOL EnableAnimationTimerEventHandler(
    BOOL bEnable = TRUE,
    UI_ANIMATION_IDLE_BEHAVIOR idleBehavior = UI_ANIMATION_IDLE_BEHAVIOR_DISABLE);

Parameterwaarden

bEnable
Hiermee geeft u op of de handlers moeten worden ingesteld of losgezet.

inactiefBehavior
Hiermee geeft u niet-actief gedrag op voor timer-updatehandler.

Retourwaarde

WAAR als handlers zijn ingesteld of vrijgegeven; FALSE als deze methode een tweede keer wordt aangeroepen zonder de handlers eerst uit te brengen of als er een andere fout optreedt.

Opmerkingen

Wanneer de handlers zijn ingesteld (ingeschakeld) roept de Windows Animatie-API OnAnimationTimerPreUpdate, OnAnimationTimerPostUpdate, OnRenderingTooSlow-methoden aan. U moet animatietimers inschakelen om storyboards van de Windows Animatie-API bij te werken. Anders moet u CAnimationController::UpdateAnimationManager aanroepen om de animatiebeheer te leiden om de waarden van alle animatievariabelen bij te werken.

CAnimationController::EnablePriorityComparisonHandler

Hiermee stelt u de prioriteitsvergelijkingshandler in om te bepalen of een gepland storyboard kan worden geannuleerd, afgesloten, ingekort of gecomprimeerd.

virtual BOOL EnablePriorityComparisonHandler(DWORD dwHandlerType);

Parameterwaarden

dwHandlerType
Een combinatie van UI_ANIMATION_PHT_ vlaggen (zie opmerkingen), waarmee wordt aangegeven welke handlers moeten worden ingesteld of vrijgegeven.

Retourwaarde

TRUE als de handler is ingesteld of vrijgegeven.

Opmerkingen

Wanneer een handler is ingesteld (ingeschakeld) roept Windows-animatie de volgende virtuele methoden aan, afhankelijk van dwHandlerType: OnHasPriorityCancel, OnHasPriorityConclude, OnHasPriorityTrim, OnHasPriorityCompress. dwHandler kan een combinatie zijn van de volgende vlaggen: UI_ANIMATION_PHT_NONE - alle handlers vrijgeven UI_ANIMATION_PHT_CANCEL - vergelijkingshandler annuleren instellen UI_ANIMATION_PHT_CONCLUDE - Vergelijkingshandler afsluiten instellen UI_ANIMATION_PHT_COMPRESS - vergelijkingshandler instellen UI_ANIMATION_PHT_TRIM - Trim vergelijkingshandler instellen UI_ANIMATION_PHT_CANCEL_REMOVE - Annuleren vergelijkingshandler verwijderen UI_ANIMATION_PHT_CONCLUDE_REMOVE - Afsluiten vergelijkingshandler verwijderen UI_ANIMATION_PHT_COMPRESS_REMOVE - vergelijkingshandler comprimeren verwijderen UI_ANIMATION_PHT_TRIM_REMOVE - Trim vergelijkingshandler verwijderen

CAnimationController::EnableStoryboardEventHandler

Hiermee stelt u een handler in of publiceert u een handler voor de storyboardstatus en update-gebeurtenissen.

virtual BOOL EnableStoryboardEventHandler(
    UINT32 nGroupID,
    BOOL bEnable = TRUE);

Parameterwaarden

nGroupID
Hiermee geeft u groeps-id.

bEnable
Hiermee geeft u op of u een handler wilt instellen of vrijgeven.

Retourwaarde

WAAR als de handler is ingesteld of vrijgegeven; ONWAAR als de opgegeven animatiegroep nu wordt gevonden of animatie voor de opgegeven groep niet is gestart en het interne storyboard NULL is.

Opmerkingen

Wanneer een handler is ingesteld (ingeschakeld) roept de Windows Animatie-API virtuele methoden OnStoryboardStatusChanges en OnStoryboardUpdated aan. Er moet een handler worden ingesteld nadat CAnimationController::Animate is aangeroepen voor de opgegeven animatiegroep, omdat er een ingekapseld IUIAnimationStoryboard-object wordt gemaakt.

CAnimationController::FindAnimationGroup

Hiermee vindt u een animatiegroep op basis van de groeps-id.

CAnimationGroup* FindAnimationGroup(UINT32 nGroupID);
CAnimationGroup* FindAnimationGroup(IUIAnimationStoryboard* pStoryboard);

Parameterwaarden

nGroupID
Hiermee geeft u een GroupID.

pStoryboard
Een aanwijzer naar een storyboard.

Retourwaarde

Een aanwijzer naar animatiegroep of NULL als de groep met de opgegeven id niet wordt gevonden.

Opmerkingen

Gebruik deze methode om tijdens runtime een animatiegroep te vinden. Er wordt een groep gemaakt en toegevoegd aan de interne lijst met animatiegroepen wanneer een eerste animatieobject met een bepaalde GroupID wordt toegevoegd aan de animatiecontroller.

CAnimationController::FindAnimationObject

Hiermee zoekt u animatieobject met een opgegeven animatievariabele.

BOOL FindAnimationObject(
    IUIAnimationVariable* pVariable,
    CAnimationBaseObject** ppObject,
    CAnimationGroup** ppGroup);

Parameterwaarden

pVariable
Een aanwijzer naar animatievariabele.

ppObject
Output. Bevat een aanwijzer naar animatieobject of NULL.

ppGroup
Output. Bevat een aanwijzer naar de animatiegroep die het animatieobject of NULL bevat.

Retourwaarde

WAAR als het object is gevonden; anders ONWAAR.

Opmerkingen

Aangeroepen vanuit gebeurtenis-handlers wanneer het nodig is om een animatieobject te vinden vanuit een binnenkomende animatievariabele.

CAnimationController::gkeyframeStoryboardStart

Een sleutelframe dat het begin van storyboard vertegenwoordigt.

static CBaseKeyFrame gkeyframeStoryboardStart;

CAnimationController::GetKeyframeStoryboardStart

Retourneert een sleutelframe dat het begin van storyboard identificeert.

static CBaseKeyFrame* GetKeyframeStoryboardStart();

Retourwaarde

Een aanwijzer naar basissleutelframe, waarmee het begin van storyboard wordt geïdentificeerd.

Opmerkingen

Verkrijg dit sleutelframe om andere sleutelframes of overgangen te baseren op het moment in de tijd waarop een storyboard begint.

CAnimationController::GetUIAnimationManager

Biedt toegang tot ingekapseld IUIAnimationManager-object.

IUIAnimationManager* GetUIAnimationManager();

Retourwaarde

Een aanwijzer naar de interface IUIAnimationManager of NULL als het maken van animatiebeheer is mislukt.

Opmerkingen

Als het huidige besturingssysteem geen ondersteuning biedt voor de Windows Animation-API, retourneert deze methode NULL en retourneert deze alle volgende aanroepen op CAnimationController::IsValid FALSE. Mogelijk moet u toegang krijgen tot IUIAnimationManager om de interfacemethoden aan te roepen, die niet zijn verpakt door animatiecontroller.

CAnimationController::GetUIAnimationTimer

Biedt toegang tot ingekapseld IUIAnimationTimer-object.

IUIAnimationTimer* GetUIAnimationTimer();

Retourwaarde

Een aanwijzer naar de IUIAnimationTimer-interface of NULL als het maken van de animatietimer is mislukt.

Opmerkingen

Als het huidige besturingssysteem geen ondersteuning biedt voor de Windows Animation-API, retourneert deze methode NULL en retourneert deze alle volgende aanroepen op CAnimationController::IsValid FALSE.

CAnimationController::GetUITransitionFactory

Een aanwijzer naar de interface IUIAnimationTransitionFactory of NULL als het maken van de overgangsbibliotheek is mislukt.

IUIAnimationTransitionFactory* GetUITransitionFactory();

Retourwaarde

Een aanwijzer naar IUIAnimationTransitionFactory of NULL als het maken van de overgangsfactory is mislukt.

Opmerkingen

Als het huidige besturingssysteem geen ondersteuning biedt voor de Windows Animation-API, retourneert deze methode NULL en retourneert deze alle volgende aanroepen op CAnimationController::IsValid FALSE.

CAnimationController::GetUITransitionLibrary

Biedt toegang tot ingekapseld IUIAnimationTransitionLibrary-object.

IUIAnimationTransitionLibrary* GetUITransitionLibrary();

Retourwaarde

Een aanwijzer naar de IUIAnimationTransitionLibrary-interface of NULL als het maken van de overgangsbibliotheek is mislukt.

Opmerkingen

Als het huidige besturingssysteem geen ondersteuning biedt voor de Windows Animation-API, retourneert deze methode NULL en retourneert deze alle volgende aanroepen op CAnimationController::IsValid FALSE.

CAnimationController::IsAnimationInProgress

Hiermee wordt aangegeven of ten minste één groep animaties afspeelt.

virtual BOOL IsAnimationInProgress();

Retourwaarde

WAAR als er een animatie wordt uitgevoerd voor deze animatiecontroller; anders ONWAAR.

Opmerkingen

Controleert de status van animatiebeheer en retourneert TRUE als de status is UI_ANIMATION_MANAGER_BUSY.

CAnimationController::IsValid

Geeft aan of de animatiecontroller geldig is.

BOOL IsValid() const;

Retourwaarde

WAAR als de animatiecontroller geldig is; anders ONWAAR.

Opmerkingen

Deze methode retourneert alleen FALSE als Windows Animatie-API niet wordt ondersteund op het huidige besturingssysteem en het maken van animatiebeheer is mislukt omdat deze niet is geregistreerd. U moet GetUIAnimationManager minstens één keer aanroepen na de initialisatie van COM-bibliotheken om de instelling van deze vlag te veroorzaken.

CAnimationController::m_bIsValid

Hiermee geeft u op of een animatiecontroller geldig is of niet. Dit lid is ingesteld op FALSE als het huidige besturingssysteem geen ondersteuning biedt voor de Windows Animatie-API.

BOOL m_bIsValid;

CAnimationController::m_lstAnimationGroups

Een lijst met animatiegroepen die deel uitmaken van deze animatiecontroller.

CList<CAnimationGroup*, CAnimationGroup*> m_lstAnimationGroups;

CAnimationController::m_pAnimationManager

Hiermee wordt een aanwijzer opgeslagen naar COM-object Animatiebeheer.

ATL::CComPtr<IUIAnimationManager> m_pAnimationManager;

CAnimationController::m_pAnimationTimer

Hiermee wordt een aanwijzer opgeslagen naar het COM-object Animatietimer.

ATL::CComPtr<IUIAnimationTimer> m_pAnimationTimer;

CAnimationController::m_pRelatedWnd

Een aanwijzer naar een gerelateerd CWnd-object, dat automatisch opnieuw kan worden getekend wanneer de status van animatiebeheer is gewijzigd of een gebeurtenis na het bijwerken is opgetreden. Kan NULL zijn.

CWnd* m_pRelatedWnd;

CAnimationController::m_pTransitionFactory

Hiermee wordt een aanwijzer opgeslagen naar het COM-object Transition Factory.

ATL::CComPtr<IUIAnimationTransitionFactory> m_pTransitionFactory;

CAnimationController::m_pTransitionLibrary

Hiermee wordt een aanwijzer opgeslagen naar het COM-object transition library.

ATL::CComPtr<IUIAnimationTransitionLibrary> m_pTransitionLibrary;

CAnimationController::OnAfterSchedule

Aangeroepen door het framework wanneer een animatie voor de opgegeven groep zojuist is gepland.

virtual void OnAfterSchedule(CAnimationGroup* pGroup);

Parameterwaarden

pGroup
Een aanwijzer naar een animatiegroep, die is gepland.

Opmerkingen

De standaard implementatie verwijdert sleutelframes uit de opgegeven groep en overgangen van animatievariabelen die deel uitmaken van de opgegeven groep. Kan worden overschreven in een afgeleide klasse om eventuele extra acties uit te voeren volgens animatieschema.

CAnimationController::OnAnimationIntegerValueChanged

Aangeroepen door het framework wanneer de waarde van de animatievariabele geheel getal is gewijzigd.

virtual void OnAnimationIntegerValueChanged(
    CAnimationGroup* pGroup,
    CAnimationBaseObject* pObject,
    IUIAnimationVariable* variable,
    INT32 newValue,
    INT32 prevValue);

Parameterwaarden

pGroup
Een aanwijzer naar een animatiegroep die een animatieobject bevat waarvan de waarde is gewijzigd.

pObject-
Een aanwijzer naar een animatieobject dat een animatievariabele bevat waarvan de waarde is gewijzigd.

Variabele
Een aanwijzer naar een animatievariabele.

newValue
Hiermee geeft u nieuwe waarde.

prevValue
Hiermee geeft u de vorige waarde op.

Opmerkingen

Deze methode wordt aangeroepen als u animatievariabelegebeurtenissen inschakelt met EnableIntegerValueChangedEvent die wordt aangeroepen voor een specifieke animatievariabele of animatieobject. Het kan worden overschreven in een afgeleide klasse om toepassingsspecifieke acties uit te voeren.

CAnimationController::OnAnimationManagerStatusChanged

Aangeroepen door het framework als reactie op statuswijzigingsgebeurtenis vanuit animatiebeheer.

virtual void OnAnimationManagerStatusChanged(
    UI_ANIMATION_MANAGER_STATUS newStatus,
    UI_ANIMATION_MANAGER_STATUS previousStatus);

Parameterwaarden

newStatus
Nieuwe status van animatiebeheer.

previousStatus
Vorige status van animatiebeheer.

Opmerkingen

Deze methode wordt aangeroepen als u animatiebeheer-gebeurtenissen inschakelt met EnableAnimationManagerEvent. Het kan worden overschreven in een afgeleide klasse om toepassingsspecifieke acties uit te voeren. De standaard implementatie werkt een gerelateerd venster bij als dit is ingesteld met Set RelatedWnd.

CAnimationController::OnAnimationTimerPostUpdate

Aangeroepen door het framework nadat een animatie-update is voltooid.

virtual void OnAnimationTimerPostUpdate();

Opmerkingen

Deze methode wordt aangeroepen als u timer gebeurtenis-handlers inschakelt met EnableAnimationTimerEventHandler. Het kan worden overschreven in een afgeleide klasse om toepassingsspecifieke acties uit te voeren.

CAnimationController::OnAnimationTimerPreUpdate

Aangeroepen door het framework voordat een animatie-update begint.

virtual void OnAnimationTimerPreUpdate();

Opmerkingen

Deze methode wordt aangeroepen als u timer gebeurtenis-handlers inschakelt met EnableAnimationTimerEventHandler. Het kan worden overschreven in een afgeleide klasse om toepassingsspecifieke acties uit te voeren.

CAnimationController::OnAnimationTimerRenderingTooSlow

Aangeroepen door het framework wanneer de renderingframesnelheid voor een animatie onder een minimale gewenste framesnelheid valt.

virtual void OnAnimationTimerRenderingTooSlow(UINT32 fps);

Parameterwaarden

Fps
De huidige framesnelheid in frames per seconde.

Opmerkingen

Deze methode wordt aangeroepen als u timer gebeurtenis-handlers inschakelt met EnableAnimationTimerEventHandler. Het kan worden overschreven in een afgeleide klasse om toepassingsspecifieke acties uit te voeren. De minimale gewenste framesnelheid wordt opgegeven door het aanroepen van IUIAnimationTimer::SetFrameRateThreshold.

CAnimationController::OnAnimationValueChanged

Aangeroepen door het framework wanneer de waarde van de animatievariabele is gewijzigd.

virtual void OnAnimationValueChanged(
    CAnimationGroup* pGroup,
    CAnimationBaseObject* pObject,
    IUIAnimationVariable* variable,
    DOUBLE newValue,
    DOUBLE prevValue);

Parameterwaarden

pGroup
Een aanwijzer naar een animatiegroep die een animatieobject bevat waarvan de waarde is gewijzigd.

pObject-
Een aanwijzer naar een animatieobject dat een animatievariabele bevat waarvan de waarde is gewijzigd.

Variabele
Een aanwijzer naar een animatievariabele.

newValue
Hiermee geeft u nieuwe waarde.

prevValue
Hiermee geeft u de vorige waarde op.

Opmerkingen

Deze methode wordt aangeroepen als u animatievariabelegebeurtenissen inschakelt met EnableValueChangedEvent die worden aangeroepen voor een specifieke animatievariabele of animatieobject. Het kan worden overschreven in een afgeleide klasse om toepassingsspecifieke acties uit te voeren.

CAnimationController::OnBeforeAnimationStart

Aangeroepen door het framework vlak voordat de animatie wordt gepland.

virtual void OnBeforeAnimationStart(CAnimationGroup* pGroup);

Parameterwaarden

pGroup
Een aanwijzer naar een animatiegroep waarvan de animatie op het punt staat te beginnen.

Opmerkingen

Deze aanroep wordt doorgestuurd naar gerelateerde CWnd en kan worden overschreven in een afgeleide klasse om eventuele extra acties uit te voeren voordat de animatie voor de opgegeven groep wordt gestart.

CAnimationController::OnHasPriorityCancel

Wordt aangeroepen door het framework om planningsconflicten op te lossen.

virtual BOOL OnHasPriorityCancel(
    CAnimationGroup* pGroupScheduled,
    CAnimationGroup* pGroupNew,
    UI_ANIMATION_PRIORITY_EFFECT priorityEffect);

Parameterwaarden

pGroupScheduled
De groep die eigenaar is van het huidige geplande storyboard.

pGroupNew
De groep die eigenaar is van het nieuwe storyboard dat zich in planning bevindt, conflicteert met het geplande storyboard dat eigendom is van pGroupScheduled.

priorityEffect
Het mogelijke effect op pGroupNew als pGroupScheduled een hogere prioriteit heeft.

Retourwaarde

Moet TRUE retourneren als storyboard eigendom is van pGroupNew prioriteit heeft. Moet ONWAAR retourneren als storyboard eigendom is van pGroupScheduled prioriteit heeft.

Opmerkingen

Deze methode wordt aangeroepen als u prioriteitsvergelijkingen inschakelt met CAnimationController::EnablePriorityComparisonHandler en UI_ANIMATION_PHT_CANCEL opgeeft. Het kan worden overschreven in een afgeleide klasse om toepassingsspecifieke acties uit te voeren. Lees de Windows Animatie-API-documentatie voor meer informatie over Conflictbeheer.

CAnimationController::OnHasPriorityCompress

Wordt aangeroepen door het framework om planningsconflicten op te lossen.

virtual BOOL OnHasPriorityCompress(
    CAnimationGroup* pGroupScheduled,
    CAnimationGroup* pGroupNew,
    UI_ANIMATION_PRIORITY_EFFECT priorityEffect);

Parameterwaarden

pGroupScheduled
De groep die eigenaar is van het huidige geplande storyboard.

pGroupNew
De groep die eigenaar is van het nieuwe storyboard dat zich in planning bevindt, conflicteert met het geplande storyboard dat eigendom is van pGroupScheduled.

priorityEffect
Het mogelijke effect op pGroupNew als pGroupScheduled een hogere prioriteit heeft.

Retourwaarde

Moet TRUE retourneren als storyboard eigendom is van pGroupNew prioriteit heeft. Moet ONWAAR retourneren als storyboard eigendom is van pGroupScheduled prioriteit heeft.

Opmerkingen

Deze methode wordt aangeroepen als u prioriteitsvergelijkingen inschakelt met CAnimationController::EnablePriorityComparisonHandler en UI_ANIMATION_PHT_COMPRESS opgeeft. Het kan worden overschreven in een afgeleide klasse om toepassingsspecifieke acties uit te voeren. Lees de Windows Animatie-API-documentatie voor meer informatie over Conflictbeheer.

CAnimationController::OnHasPriorityConclude

Wordt aangeroepen door het framework om planningsconflicten op te lossen.

virtual BOOL OnHasPriorityConclude(
    CAnimationGroup* pGroupScheduled,
    CAnimationGroup* pGroupNew,
    UI_ANIMATION_PRIORITY_EFFECT priorityEffect);

Parameterwaarden

pGroupScheduled
De groep die eigenaar is van het huidige geplande storyboard.

pGroupNew
De groep die eigenaar is van het nieuwe storyboard dat zich in planning bevindt, conflicteert met het geplande storyboard dat eigendom is van pGroupScheduled.

priorityEffect
Het mogelijke effect op pGroupNew als pGroupScheduled een hogere prioriteit heeft.

Retourwaarde

Moet TRUE retourneren als storyboard eigendom is van pGroupNew prioriteit heeft. Moet ONWAAR retourneren als storyboard eigendom is van pGroupScheduled prioriteit heeft.

Opmerkingen

Deze methode wordt aangeroepen als u prioriteitsvergelijkingen inschakelt met behulp van CAnimationController::EnablePriorityComparisonHandler en UI_ANIMATION_PHT_CONCLUDE opgeeft. Het kan worden overschreven in een afgeleide klasse om toepassingsspecifieke acties uit te voeren. Lees de Windows Animatie-API-documentatie voor meer informatie over Conflictbeheer.

CAnimationController::OnHasPriorityTrim

Wordt aangeroepen door het framework om planningsconflicten op te lossen.

virtual BOOL OnHasPriorityTrim(
    CAnimationGroup* pGroupScheduled,
    CAnimationGroup* pGroupNew,
    UI_ANIMATION_PRIORITY_EFFECT priorityEffect);

Parameterwaarden

pGroupScheduled
De groep die eigenaar is van het huidige geplande storyboard.

pGroupNew
De groep die eigenaar is van het nieuwe storyboard dat zich in planning bevindt, conflicteert met het geplande storyboard dat eigendom is van pGroupScheduled.

priorityEffect
Het mogelijke effect op pGroupNew als pGroupScheduled een hogere prioriteit heeft.

Retourwaarde

Moet TRUE retourneren als storyboard eigendom is van pGroupNew prioriteit heeft. Moet ONWAAR retourneren als storyboard eigendom is van pGroupScheduled prioriteit heeft.

Opmerkingen

Deze methode wordt aangeroepen als u prioriteitsvergelijkingsevenementen inschakelt met CAnimationController::EnablePriorityComparisonHandler en UI_ANIMATION_PHT_TRIM opgeeft. Het kan worden overschreven in een afgeleide klasse om toepassingsspecifieke acties uit te voeren. Lees de Windows Animatie-API-documentatie voor meer informatie over Conflictbeheer.

CAnimationController::OnStoryboardStatusChanged

Aangeroepen door het framework wanneer de storyboardstatus is gewijzigd.

virtual void OnStoryboardStatusChanged(
    CAnimationGroup* pGroup,
    UI_ANIMATION_STORYBOARD_STATUS newStatus,
    UI_ANIMATION_STORYBOARD_STATUS previousStatus);

Parameterwaarden

pGroup
Een aanwijzer naar een animatiegroep die eigenaar is van het storyboard waarvan de status is gewijzigd.

newStatus
Hiermee geeft u de nieuwe status.

previousStatus
Hiermee geeft u de vorige status.

Opmerkingen

Deze methode wordt aangeroepen als u storyboard-gebeurtenissen inschakelt met CAnimationController::EnableStoryboardEventHandler. Het kan worden overschreven in een afgeleide klasse om toepassingsspecifieke acties uit te voeren.

CAnimationController::OnStoryboardUpdated

Aangeroepen door het framework wanneer storyboard is bijgewerkt.

virtual void OnStoryboardUpdated(CAnimationGroup* pGroup);

Parameterwaarden

pGroup
Een aanwijzer naar een groep die eigenaar is van het storyboard.

Opmerkingen

Deze methode wordt aangeroepen als u storyboard-gebeurtenissen inschakelt met CAnimationController::EnableStoryboardEventHandler. Het kan worden overschreven in een afgeleide klasse om toepassingsspecifieke acties uit te voeren.

CAnimationController::RemoveAllAnimationGroups

Hiermee verwijdert u alle animatiegroepen uit de animatiecontroller.

void RemoveAllAnimationGroups();

Opmerkingen

Alle groepen worden verwijderd, de aanwijzer, indien op toepassingsniveau opgeslagen, moet ongeldig worden gemaakt. Als CAnimationGroup::m_bAutodestroyAnimationObjects voor een groep die wordt verwijderd WAAR is, worden alle animatieobjecten die deel uitmaken van die groep verwijderd; anders worden de verwijzingen naar de bovenliggende animatiecontroller ingesteld op NULL en kunnen ze worden toegevoegd aan een andere controller.

CAnimationController::RemoveAnimationGroup

Hiermee verwijdert u een animatiegroep met de opgegeven id van de animatiecontroller.

void RemoveAnimationGroup(UINT32 nGroupID);

Parameterwaarden

nGroupID
Hiermee geeft u de id van de animatiegroep op.

Opmerkingen

Met deze methode verwijdert u een animatiegroep uit de interne lijst met groepen en verwijdert u deze, dus als u een aanwijzer naar die animatiegroep hebt opgeslagen, moet deze ongeldig zijn. Als CAnimationGroup::m_bAutodestroyAnimationObjects TRUE is, worden alle animatieobjecten die deel uitmaken van die groep verwijderd; anders worden de verwijzingen naar de bovenliggende animatiecontroller ingesteld op NULL en kunnen ze worden toegevoegd aan een andere controller.

CAnimationController::RemoveAnimationObject

Een animatieobject verwijderen uit de animatiecontroller.

void RemoveAnimationObject(
    CAnimationBaseObject* pObject,
    BOOL bNoDelete = FALSE);

Parameterwaarden

pObject-
Een aanwijzer naar een animatieobject.

bNoDelete
Als deze parameter TRUE is, wordt het object niet verwijderd bij het verwijderen.

Opmerkingen

Hiermee verwijdert u een animatieobject uit de animatiecontroller en animatiegroep. Roep deze functie aan als een bepaald object niet meer moet worden geanimeerd of als u het object naar een andere animatiecontroller wilt verplaatsen. In het laatste geval moet bNoDelete WAAR zijn.

CAnimationController::RemoveTransitions

Hiermee verwijdert u overgangen van animatieobjecten die deel uitmaken van de opgegeven groep.

void RemoveTransitions(UINT32 nGroupID);

Parameterwaarden

nGroupID
Hiermee geeft u groeps-id.

Opmerkingen

De groepslussen over de animatieobjecten en roept ClearTransitions (FALSE) aan voor elk animatieobject. Deze methode wordt aangeroepen door het framework nadat animatie is gepland.

CAnimationController::ScheduleGroup

Hiermee wordt een animatie gepland.

BOOL ScheduleGroup(
    UINT32 nGroupID,
    UI_ANIMATION_SECONDS time = 0.0);

Parameterwaarden

nGroupID
Hiermee geeft u de groeps-id voor animatie op die moet worden gepland.

time
Hiermee geeft u de tijd om te plannen.

Retourwaarde

WAAR als de animatie is gepland. ONWAAR als storyboard niet is gemaakt of als er een andere fout optreedt.

Opmerkingen

U moet AnimateGroup aanroepen met parameter bScheduleNow ingesteld op FALSE prior ScheduleGroup. U kunt de gewenste animatietijd opgeven die u hebt verkregen via IUIAnimationTimer::GetTime. Als de tijdparameter 0.0 is, wordt de animatie gepland voor de huidige tijd.

CAnimationController::SetRelatedWnd

Hiermee wordt een relatie tussen de animatiecontroller en een venster tot stand brengen.

void SetRelatedWnd(CWnd* pWnd);

Parameterwaarden

pWnd
Een aanwijzer naar vensterobject dat moet worden ingesteld.

Opmerkingen

Als een gerelateerd CWnd-object is ingesteld, kan de animatiecontroller het automatisch bijwerken (WM_PAINT bericht verzenden) wanneer de status van animatiebeheer is gewijzigd of de timer na het bijwerken heeft plaatsgevonden.

CAnimationController::UpdateAnimationManager

Hiermee wordt de animatiebeheerder om de waarden van alle animatievariabelen bij te werken.

virtual void UpdateAnimationManager();

Opmerkingen

Als u deze methode aanroept, wordt de animatiebeheerder naar de huidige tijd doorgezet, waar nodig de statussen van storyboards te wijzigen en eventuele animatievariabelen bij te werken naar de juiste geïnterpoleerde waarden. Intern roept deze methode IUIAnimationTimer::GetTime(timeNow) en IUIAnimationManager::Update(timeNow) aan. Overschrijf deze methode in een afgeleide klasse om dit gedrag aan te passen.

Zie ook

Klassen