Megosztás a következőn keresztül:


CAnimationController osztály

Megjegyzés:

A Microsoft Foundation Classes (MFC) könyvtár továbbra is támogatott. A továbbiakban azonban nem adunk hozzá funkciókat, és nem frissítjük a dokumentációt.

Implementálja az animációvezérlőt, amely központi felületet biztosít az animációk létrehozásához és kezeléséhez.

Szemantika

class CAnimationController : public CObject;

Tagok

Nyilvános konstruktorok

Név Description
CAnimationController::CAnimationController Animációvezérlőt hoz létre.
CAnimationController::~CAnimationController A destruktor. Az animációvezérlő objektumának megsemmisítésekor hívható meg.

Nyilvános metódusok

Név Description
CAnimationController::AddAnimationObject Animációs objektumot ad hozzá az animációvezérlőhöz tartozó csoporthoz.
CAnimationController::AddKeyframeToGroup Hozzáad egy kulcskeretet a csoportosításhoz.
CAnimationController::AnimateGroup Előkészít egy csoportot az animáció futtatására, és igény szerint ütemezi azt.
CAnimationController::CleanUpGroup Túlterhelt. A keretrendszer meghívta, hogy távolítsa el a csoportot az animáció ütemezésekor.
CAnimationController::CreateKeyframe Túlterhelt. Létrehoz egy kulcskeretet, amely az áttűnéstől függ, és hozzáadja a megadott csoporthoz.
CAnimationController::EnableAnimationManagerEvent Beállít vagy felszabadít egy kezelőt, hogy meghívja az animációkezelő állapota megváltozásakor.
CAnimationController::EnableAnimationTimerEventHandler Beállít vagy kiad egy kezelőt az időzítési eseményekhez, és kezelőt az időzítési frissítésekhez.
CAnimationController::EnablePriorityComparisonHandler Beállítja vagy felszabadítja a prioritás-összehasonlító kezelőt, hogy meg lehessen állapítani, hogy egy ütemezett történettábla megszakítható, lezárható, levágható vagy tömöríthető-e.
CAnimationController::EnableStoryboardEventHandler Beállít vagy kiad egy kezelőt a storyboard állapotához és az események frissítéséhez.
CAnimationController::FindAnimationGroup Túlterhelt. Megkeres egy animációs csoportot a történet alapján.
CAnimationController::FindAnimationObject Megkeresi a megadott animációs változót tartalmazó animációs objektumot.
CAnimationController::GetKeyframeStoryboardStart Egy kulcskeretet ad vissza, amely azonosítja a storyboard kezdetét.
CAnimationController::GetUIAnimationManager Hozzáférést biztosít a beágyazott IUIAnimationManager objektumhoz.
CAnimationController::GetUIAnimationTimer Hozzáférést biztosít a beágyazott IUIAnimationTimer objektumhoz.
CAnimationController::GetUITransitionFactory Az IUIAnimationTransitionFactory felületre vagy NULL-ra mutató mutató, ha az áttűnési kódtár létrehozása sikertelen volt.
CAnimationController::GetUITransitionLibrary Hozzáférést biztosít a beágyazott IUIAnimationTransitionLibrary objektumhoz.
CAnimationController::IsAnimationInProgress Azt jelzi, hogy legalább egy csoport animációt játszik-e le.
CAnimationController::IsValid Jelzi, hogy az animációvezérlő érvényes-e.
CAnimationController::OnAnimationIntegerValueChanged A keretrendszer meghívja, ha az animációs változó egész száma módosult.
CAnimationController::OnAnimationManagerStatusChanged A keretrendszer meghívta a StatusChanged eseményre válaszul az animációkezelőtől.
CAnimationController::OnAnimationTimerPostUpdate A keretrendszer meghívta az animációs frissítés befejezése után.
CAnimationController::OnAnimationTimerPreUpdate A keretrendszer meghívta az animációs frissítés megkezdése előtt.
CAnimationController::OnAnimationTimerRenderingTooSlow A keretrendszer meghívja, amikor egy animáció renderelési képkockasebessége a minimálisan kívánt képkockasebesség alá esik.
CAnimationController::OnAnimationValueChanged A keretrendszer meghívja, amikor az animációs változó értéke megváltozott.
CAnimationController::OnBeforeAnimationStart Közvetlenül az animáció ütemezése előtt hívja meg a keretrendszer.
CAnimationController::OnHasPriorityCancel A keretrendszer meghívta az ütemezési ütközések feloldásához.
CAnimationController::OnHasPriorityCompress A keretrendszer meghívta az ütemezési ütközések feloldásához.
CAnimationController::OnHasPriorityConclude A keretrendszer meghívta az ütemezési ütközések feloldásához.
CAnimationController::OnHasPriorityTrim A keretrendszer meghívta az ütemezési ütközések feloldásához.
CAnimationController::OnStoryboardStatusChanged A keretrendszer meghívta, amikor a storyboard állapota megváltozott.
CAnimationController::OnStoryboardUpdated A keretrendszer meghívta a storyboard frissítésekor.
CAnimationController::RemoveAllAnimationGroups Eltávolítja az összes animációs csoportot az animációvezérlőből.
CAnimationController::RemoveAnimationGroup Eltávolít egy megadott azonosítóval rendelkező animációs csoportot az animációvezérlőből.
CAnimationController::RemoveAnimationObject Animációs objektum eltávolítása az animációvezérlőből.
CAnimationController::RemoveTransitions Eltávolítja a megadott csoporthoz tartozó animációs objektumok áttűnéseit.
CAnimationController::ScheduleGroup Animáció ütemezése.
CAnimationController::SetRelatedWnd Kapcsolatot hoz létre az animációvezérlő és az ablak között.
CAnimationController::UpdateAnimationManager Az animációkezelőt az összes animációs változó értékének frissítésére irányítja.

Védett metódusok

Név Description
CAnimationController::CleanUpGroup Túlterhelt. Egy segítő, aki megtisztítja a csoportot.
CAnimationController::OnAfterSchedule A keretrendszer meghívta, amikor a megadott csoport animációját éppen ütemezték.

Védett adattagok

Név Description
CAnimationController::gkeyframeStoryboardStart A forgatókönyv kezdetét jelképező kulcskeret.
CAnimationController::m_bIsValid Megadja, hogy egy animációvezérlő érvényes-e vagy sem. Ez a tag HAMIS értékre van állítva, ha a jelenlegi operációs rendszer nem támogatja a Windows Animation API-t.
CAnimationController::m_lstAnimationGroups Az animációvezérlőhöz tartozó animációs csoportok listája.
CAnimationController::m_pAnimationManager Az Animation Manager COM-objektumra mutató mutatót tárol.
CAnimationController::m_pAnimationTimer Az Animáció időzítő COM-objektumra mutató mutatót tárol.
CAnimationController::m_pRelatedWnd Egy kapcsolódó CWnd objektumra mutató mutató, amely automatikusan újrarajzolt, ha az animációkezelő állapota megváltozott, vagy a frissítés utáni esemény történt. Null érték is lehet.
CAnimationController::m_pTransitionFactory A Transition Factory COM objektumra mutató mutatót tárol.
CAnimationController::m_pTransitionLibrary Az áttűnéstár COM-objektumára mutató mutatót tárol.

Megjegyzések

A CAnimationController osztály az animációkat kezelő kulcsosztály. Létrehozhat egy vagy több animációvezérlő-példányt egy alkalmazásban, és opcionálisan csatlakoztathat egy animációvezérlő-példányt egy CWnd objektumhoz a CAnimationController::SetRelatedWnd használatával. Ez a kapcsolat szükséges ahhoz, hogy WM_PAINT üzeneteket automatikusan elküldjön a kapcsolódó ablakba, ha az animációkezelő állapota megváltozott, vagy az animáció időzítője frissült. Ha nem engedélyezi ezt a kapcsolatot, manuálisan kell újból létrehoznia egy animációt megjelenítő ablakot. Ebből a célból egy osztályt a CAnimationControllerből származtathat, és felülbírálhatja az OnAnimationManagerStatusChanged és/vagy az OnAnimationTimerPostUpdate parancsot, és szükség esetén érvényteleníthet egy vagy több ablakot.

Öröklési hierarchia

CObject

CAnimationController

Requirements

Fejléc: afxanimationcontroller.h

CAnimationController::~CAnimationController

A destruktor. Az animációvezérlő objektumának megsemmisítésekor hívható meg.

virtual ~CAnimationController(void);

CAnimationController::AddAnimationObject

Animációs objektumot ad hozzá az animációvezérlőhöz tartozó csoporthoz.

CAnimationGroup* AddAnimationObject(CAnimationBaseObject* pObject);

Paraméterek

pObject
Egy animációs objektumra mutató mutató.

Visszaadott érték

Mutató a meglévő vagy új animációs csoporthoz, ahol a pObject hozzáadva, ha a függvény sikeres; NULL érték, ha a pObject már hozzá lett adva egy másik animációvezérlőhöz tartozó csoporthoz.

Megjegyzések

Hívja meg ezt a metódust, ha animációs objektumot szeretne hozzáadni az animációvezérlőhöz. Egy objektum az objektum csoportazonosítója szerint lesz hozzáadva egy csoporthoz (lásd: CAnimationBaseObject::SetID). Az animációvezérlő új csoportot hoz létre, ha ez az első objektum, amely a megadott GroupID azonosítóval van hozzáadva. Egy animációs objektum csak egy animációs vezérlőhöz adható hozzá. Ha egy objektumot szeretne hozzáadni egy másik vezérlőhöz, először hívja meg a RemoveAnimationObject parancsot. Ha olyan objektumhoz hívja meg a SetID azonosítót, amely már hozzá lett adva egy csoporthoz, az objektum el lesz távolítva a régi csoportból, és hozzáadódik egy másik, megadott azonosítóval rendelkező csoporthoz.

CAnimationController::AddKeyframeToGroup

Hozzáad egy kulcskeretet a csoportosításhoz.

BOOL AddKeyframeToGroup(
    UINT32 nGroupID,
    CBaseKeyFrame* pKeyframe);

Paraméterek

nGroupID
Megadja a csoportazonosítót.

pKeyframe
Egy kulcskeretre mutató mutató.

Visszaadott érték

IGAZ, ha a függvény sikeres; egyéb esetben HAMIS.

Megjegyzések

Általában nem kell meghívnia ezt a metódust, használja helyette a CAnimationController::CreateKeyframe parancsot, amely automatikusan létrehozza és hozzáadja a létrehozott kulcskeretet egy csoporthoz.

CAnimationController::AnimateGroup

Előkészít egy csoportot az animáció futtatására, és igény szerint ütemezi azt.

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

Paraméterek

nGroupID
A GroupID értéket adja meg.

bScheduleNow
Itt adhatja meg, hogy azonnal futtassa-e az animációt.

Visszaadott érték

IGAZ, ha az animációt sikeresen ütemezték és futtatták.

Megjegyzések

Ez a módszer elvégzi a tényleges munkát a storyboard létrehozásához, animációs változók hozzáadásához, áttűnések alkalmazásához és kulcskeretek beállításához. Ha a bScheduleNow-t FALSE értékre állítja, késleltetheti az ütemezést. Ebben az esetben a megadott csoport egy animációhoz beállított storyboardot fog tárolni. Ezen a ponton beállíthatja a forgatókönyv és az animáció változóinak eseményeit. Amikor ténylegesen futtatnia kell a CAnimationController::ScheduleGroup animációs hívást.

CAnimationController::CAnimationController

Animációvezérlőt hoz létre.

CAnimationController(void);

CAnimationController::CleanUpGroup

A keretrendszer meghívta, hogy távolítsa el a csoportot az animáció ütemezésekor.

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

Paraméterek

nGroupID
A GroupID értéket adja meg.

pGroup
A megtisztítandó animációs csoportra mutató mutató.

Megjegyzések

Ez a metódus eltávolítja az összes áttűnést és kulcskeretet a megadott csoportból, mivel ezek nem relevánsak az animáció ütemezése után.

CAnimationController::CreateKeyframe

Létrehoz egy kulcskeretet, amely az áttűnéstől függ, és hozzáadja a megadott csoporthoz.

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

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

Paraméterek

nGroupID
Megadja a csoportazonosítót, amelyhez a kulcskeret létrejön.

pTransition
Áttűnés mutatója. Az áttűnés után a rendszer beszúrja a kulcskeretet a storyboardba.

pKeyframe
A kulcskeret alapkulcskeretére mutató mutató.

ellensúlyoz
Eltolás másodpercben a pKeyframe által megadott alapkulcskerettől.

Visszaadott érték

Az újonnan létrehozott kulcskeretre mutató mutató, ha a függvény sikeres.

Megjegyzések

A visszaadott mutatót tárolhatja, és más kulcskereteket is létrehozhat az újonnan létrehozott kulcskereten (lásd a második túlterhelést). A kulcskereteken áttűnéseket is elkezdhet – lásd: CBaseTransition::SetKeyframes. Nem kell törölnie az ily módon létrehozott kulcskereteket, mert az animációs csoportok automatikusan törlik őket. Ügyeljen arra, hogy kulcskereteket hozzon létre más kulcskeretek és áttűnések alapján, és kerülje a körkörös hivatkozásokat.

CAnimationController::EnableAnimationManagerEvent

Beállít vagy felszabadít egy kezelőt, hogy meghívja az animációkezelő állapota megváltozásakor.

virtual BOOL EnableAnimationManagerEvent(BOOL bEnable = TRUE);

Paraméterek

bEnable
Meghatározza, hogy egy kezelőt állítson be vagy engedjen fel.

Visszaadott érték

IGAZ, ha a kezelő sikeresen be lett állítva vagy ki lett adva.

Megjegyzések

Ha egy kezelő be van állítva (engedélyezve) a Windows Animation meghívja az OnAnimationManagerStatusChanged parancsot, amikor az animációkezelő állapota megváltozik.

CAnimationController::EnableAnimationTimerEventHandler

Beállít vagy kiad egy kezelőt az időzítési eseményekhez, és kezelőt az időzítési frissítésekhez.

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

Paraméterek

bEnable
Megadja, hogy a kezelőket beállítsa vagy engedje fel.

idleBehavior
Az időzítőfrissítés-kezelő tétlenségi viselkedését adja meg.

Visszaadott érték

IGAZ, ha a kezelők beállítása vagy kiadása sikeresen megtörtént; HAMIS, ha ezt a metódust másodszor is meghívják a kezelők első feloldása nélkül, vagy ha bármilyen más hiba történik.

Megjegyzések

Ha a kezelők be vannak állítva (engedélyezve), a Windows Animation API meghívja az OnAnimationTimerPreUpdate, az OnAnimationTimerPostUpdate és az OnRenderingTooSlow metódusokat. Engedélyeznie kell az animációs időzítőket a Windows Animation API frissítési forgatókönyveinek engedélyezéséhez. Ellenkező esetben meg kell hívnia a CAnimationController::UpdateAnimationManager parancsot, hogy az animációs kezelő az összes animációs változó értékeit frissítse.

CAnimationController::EnablePriorityComparisonHandler

Beállítja vagy felszabadítja a prioritás-összehasonlító kezelőt, hogy meg lehessen állapítani, hogy egy ütemezett történettábla megszakítható, lezárható, levágható vagy tömöríthető-e.

virtual BOOL EnablePriorityComparisonHandler(DWORD dwHandlerType);

Paraméterek

dwHandlerType
A UI_ANIMATION_PHT_ jelzők (lásd megjegyzések) kombinációja, amely meghatározza, hogy mely kezelőket kell beállítani vagy kiadni.

Visszaadott érték

IGAZ, ha a kezelő sikeresen be lett állítva vagy ki lett adva.

Megjegyzések

Ha egy kezelő be van állítva (engedélyezve) a Windows Animation a következő virtuális metódusokat hívja meg a dwHandlerType típustól függően: OnHasPriorityCancel, OnHasPriorityConclude, OnHasPriorityTrim, OnHasPriorityCompress. A dwHandler a következő jelölők kombinációja lehet: UI_ANIMATION_PHT_NONE - az összes kezelő felszabadítása UI_ANIMATION_PHT_CANCEL - állítsa be az Összehasonlító kezelő lemondása UI_ANIMATION_PHT_CONCLUDE beállítását – az összehasonlító kezelő UI_ANIMATION_PHT_COMPRESS beállítása – Az összehasonlító összehasonlító kezelő UI_ANIMATION_PHT_TRIM beállítása – a Vágási összehasonlító kezelő UI_ANIMATION_PHT_CANCEL_REMOVE beállítása – Az összehasonlító kezelő törlése UI_ANIMATION_PHT_CONCLUDE_REMOVE eltávolítása – a Conclude összehasonlító kezelő UI_ANIMATION_PHT_COMPRESS_REMOVE eltávolítása – a Tömörítési összehasonlító kezelő eltávolítása UI_ANIMATION_PHT_TRIM_REMOVE – a Vágási összehasonlító kezelő eltávolítása

CAnimationController::EnableStoryboardEventHandler

Beállít vagy kiad egy kezelőt a storyboard állapotához és az események frissítéséhez.

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

Paraméterek

nGroupID
Megadja a csoportazonosítót.

bEnable
Meghatározza, hogy egy kezelőt állítson be vagy engedjen fel.

Visszaadott érték

IGAZ, ha a kezelő sikeresen be lett állítva vagy ki lett adva; HAMIS, ha a megadott animációs csoport már megtalálható, vagy a megadott csoport animációja nem lett elindítva, és a belső vágólap null értékű.

Megjegyzések

Ha egy kezelő be van állítva (engedélyezve), a Windows Animation API meghívja az OnStoryboardStatusChanges és az OnStoryboardUpdated virtuális metódusokat. A CAnimationController::Animate meghívása után be kell állítani egy kezelőt a megadott animációs csoporthoz, mert beágyazott IUIAnimationStoryboard objektumot hoz létre.

CAnimationController::FindAnimationGroup

Megkeres egy animációs csoportot a csoportazonosítója alapján.

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

Paraméterek

nGroupID
Csoportazonosítót ad meg.

pStoryboard
Mutató egy történethez.

Visszaadott érték

Ha a megadott azonosítóval rendelkező csoport nem található, az animációs csoportra vagy NULL értékre mutató mutató.

Megjegyzések

Ezzel a módszerrel futásidőben kereshet animációs csoportot. A rendszer létrehoz és hozzáad egy csoportot az animációs csoportok belső listájához, amikor egy első animációs objektumot ad hozzá egy adott GroupID azonosítóval az animációvezérlőhöz.

CAnimationController::FindAnimationObject

Megkeresi a megadott animációs változót tartalmazó animációs objektumot.

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

Paraméterek

pVariable
Egy animációs változóra mutató mutató.

ppObject
Kimeneti. Egy animációs objektumra mutató mutatót vagy NULL értéket tartalmaz.

ppGroup
Kimeneti. Az animációs objektumot vagy NULL értéket tartalmazó animációs csoportra mutató mutatót tartalmaz.

Visszaadott érték

IGAZ, ha objektumot találtak; egyéb esetben HAMIS.

Megjegyzések

Eseménykezelőktől hívható meg, ha egy animációs objektumot kell megkeresni a bejövő animációs változóból.

CAnimationController::gkeyframeStoryboardStart

A forgatókönyv kezdetét jelképező kulcskeret.

static CBaseKeyFrame gkeyframeStoryboardStart;

CAnimationController::GetKeyframeStoryboardStart

Egy kulcskeretet ad vissza, amely azonosítja a storyboard kezdetét.

static CBaseKeyFrame* GetKeyframeStoryboardStart();

Visszaadott érték

Az alapkulcskeretre mutató mutató, amely azonosítja a storyboard kezdetét.

Megjegyzések

Szerezze be ezt a kulcskeretet, hogy minden más kulcskeretet vagy áttűnést arra a pillanatra alapozza, amikor egy történettábla elindul.

CAnimationController::GetUIAnimationManager

Hozzáférést biztosít a beágyazott IUIAnimationManager objektumhoz.

IUIAnimationManager* GetUIAnimationManager();

Visszaadott érték

Ha az animációkezelő létrehozása sikertelen, az IUIAnimationManager felületre vagy NULL-ra mutató mutató.

Megjegyzések

Ha a jelenlegi operációs rendszer nem támogatja a Windows Animation API-t, ez a metódus NULL értéket ad vissza, majd ezt követően a CAnimationController::IsValid eredménye HAMIS. Előfordulhat, hogy az IUIAnimationManager-hez kell hozzáférnie ahhoz, hogy meghívja annak felületi metódusait, amelyeket nem az animációvezérlő csomagol be.

CAnimationController::GetUIAnimationTimer

Hozzáférést biztosít a beágyazott IUIAnimationTimer objektumhoz.

IUIAnimationTimer* GetUIAnimationTimer();

Visszaadott érték

Az IUIAnimationTimer felületre vagy NULL értékre mutató mutató, ha az animációs időzítő létrehozása nem sikerült.

Megjegyzések

Ha a jelenlegi operációs rendszer nem támogatja a Windows Animation API-t, ez a metódus NULL értéket ad vissza, majd ezt követően a CAnimationController::IsValid eredménye HAMIS.

CAnimationController::GetUITransitionFactory

Az IUIAnimationTransitionFactory felületre vagy NULL-ra mutató mutató, ha az áttűnési kódtár létrehozása sikertelen volt.

IUIAnimationTransitionFactory* GetUITransitionFactory();

Visszaadott érték

Az IUIAnimationTransitionFactory vagy NULL értékre mutató mutató, ha az áttűnési gyár létrehozása sikertelen volt.

Megjegyzések

Ha a jelenlegi operációs rendszer nem támogatja a Windows Animation API-t, ez a metódus NULL értéket ad vissza, majd ezt követően a CAnimationController::IsValid eredménye HAMIS.

CAnimationController::GetUITransitionLibrary

Hozzáférést biztosít a beágyazott IUIAnimationTransitionLibrary objektumhoz.

IUIAnimationTransitionLibrary* GetUITransitionLibrary();

Visszaadott érték

Az IUIAnimationTransitionLibrary felületre vagy NULL-ra mutató mutató, ha az áttűnési kódtár létrehozása sikertelen volt.

Megjegyzések

Ha a jelenlegi operációs rendszer nem támogatja a Windows Animation API-t, ez a metódus NULL értéket ad vissza, majd ezt követően a CAnimationController::IsValid eredménye HAMIS.

CAnimationController::IsAnimationInProgress

Azt jelzi, hogy legalább egy csoport animációt játszik-e le.

virtual BOOL IsAnimationInProgress();

Visszaadott érték

IGAZ, ha animáció van folyamatban ehhez az animációvezérlőhöz; egyéb esetben HAMIS.

Megjegyzések

Ellenőrzi az animációkezelő állapotát, és igaz értéket ad vissza, ha az állapot UI_ANIMATION_MANAGER_BUSY.

CAnimationController::IsValid

Jelzi, hogy az animációvezérlő érvényes-e.

BOOL IsValid() const;

Visszaadott érték

IGAZ, ha az animációvezérlő érvényes; egyéb esetben HAMIS.

Megjegyzések

Ez a metódus csak akkor ad vissza HAMIS értéket, ha a Windows Animation API nem támogatott az aktuális operációs rendszeren, és az animációkezelő létrehozása meghiúsult, mert nincs regisztrálva. A jelölő beállításához a COM-kódtárak inicializálása után legalább egyszer meg kell hívnia a GetUIAnimationManagert.

CAnimationController::m_bIsValid

Megadja, hogy egy animációvezérlő érvényes-e vagy sem. Ez a tag HAMIS értékre van állítva, ha a jelenlegi operációs rendszer nem támogatja a Windows Animation API-t.

BOOL m_bIsValid;

CAnimationController::m_lstAnimationGroups

Az animációvezérlőhöz tartozó animációs csoportok listája.

CList<CAnimationGroup*, CAnimationGroup*> m_lstAnimationGroups;

CAnimationController::m_pAnimationManager

Az Animation Manager COM-objektumra mutató mutatót tárol.

ATL::CComPtr<IUIAnimationManager> m_pAnimationManager;

CAnimationController::m_pAnimationTimer

Az Animáció időzítő COM-objektumra mutató mutatót tárol.

ATL::CComPtr<IUIAnimationTimer> m_pAnimationTimer;

CAnimationController::m_pRelatedWnd

Egy kapcsolódó CWnd objektumra mutató mutató, amely automatikusan újrarajzolt, ha az animációkezelő állapota megváltozott, vagy a frissítés utáni esemény történt. Null érték is lehet.

CWnd* m_pRelatedWnd;

CAnimationController::m_pTransitionFactory

A Transition Factory COM objektumra mutató mutatót tárol.

ATL::CComPtr<IUIAnimationTransitionFactory> m_pTransitionFactory;

CAnimationController::m_pTransitionLibrary

Az áttűnéstár COM-objektumára mutató mutatót tárol.

ATL::CComPtr<IUIAnimationTransitionLibrary> m_pTransitionLibrary;

CAnimationController::OnAfterSchedule

A keretrendszer meghívta, amikor a megadott csoport animációját éppen ütemezték.

virtual void OnAfterSchedule(CAnimationGroup* pGroup);

Paraméterek

pGroup
Egy ütemezett animációs csoportra mutató mutató.

Megjegyzések

Az alapértelmezett implementáció eltávolítja a kulcskereteket a megadott csoportból, és áttűnéseket a megadott csoporthoz tartozó animációs változókról. Egy származtatott osztályban felül lehet bírálni a további műveleteket az animáció ütemezése alapján.

CAnimationController::OnAnimationIntegerValueChanged

A keretrendszer meghívja, ha az animációs változó egész száma módosult.

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

Paraméterek

pGroup
Egy olyan animációs csoportra mutató mutató, amely egy olyan animációs objektumot tartalmaz, amelynek az értéke megváltozott.

pObject
Egy animációs objektumra mutató mutató, amely egy olyan animációs változót tartalmaz, amelynek az értéke megváltozott.

Változó
Egy animációs változóra mutató mutató.

newValue
Új értéket ad meg.

prevValue
Az előző értéket adja meg.

Megjegyzések

Ez a metódus akkor hívható meg, ha az EnableIntegerValueChangedEvent használatával engedélyezi az animációs változó eseményeit, és egy adott animációs változót vagy animációs objektumot hív meg. Egy származtatott osztályban felülírható az alkalmazásspecifikus műveletek végrehajtása.

CAnimationController::OnAnimationManagerStatusChanged

A keretrendszer meghívta a StatusChanged eseményre válaszul az animációkezelőtől.

virtual void OnAnimationManagerStatusChanged(
    UI_ANIMATION_MANAGER_STATUS newStatus,
    UI_ANIMATION_MANAGER_STATUS previousStatus);

Paraméterek

newStatus
Új animációkezelő állapota.

previousStatus
Előző animációkezelő állapota.

Megjegyzések

Ez a metódus akkor hívódik meg, ha engedélyezi az Animációkezelő eseményeit az EnableAnimationManagerEvent használatával. Egy származtatott osztályban felülírható az alkalmazásspecifikus műveletek végrehajtása. Az alapértelmezett implementáció frissíti a kapcsolódó ablakot, ha a SetRelatedWnd beállítással lett beállítva.

CAnimationController::OnAnimationTimerPostUpdate

A keretrendszer meghívta az animációs frissítés befejezése után.

virtual void OnAnimationTimerPostUpdate();

Megjegyzések

Ez a metódus akkor hívódik meg, ha az EnableAnimationTimerEventHandler használatával engedélyezi az időzítő eseménykezelőit. Egy származtatott osztályban felülírható az alkalmazásspecifikus műveletek végrehajtása.

CAnimationController::OnAnimationTimerPreUpdate

A keretrendszer meghívta az animációs frissítés megkezdése előtt.

virtual void OnAnimationTimerPreUpdate();

Megjegyzések

Ez a metódus akkor hívódik meg, ha az EnableAnimationTimerEventHandler használatával engedélyezi az időzítő eseménykezelőit. Egy származtatott osztályban felülírható az alkalmazásspecifikus műveletek végrehajtása.

CAnimationController::OnAnimationTimerRenderingTooSlow

A keretrendszer meghívja, amikor egy animáció renderelési képkockasebessége a minimálisan kívánt képkockasebesség alá esik.

virtual void OnAnimationTimerRenderingTooSlow(UINT32 fps);

Paraméterek

Fps
Az aktuális képkockasebesség képkockákban másodpercenként.

Megjegyzések

Ez a metódus akkor hívódik meg, ha az EnableAnimationTimerEventHandler használatával engedélyezi az időzítő eseménykezelőit. Egy származtatott osztályban felülírható az alkalmazásspecifikus műveletek végrehajtása. A minimálisan kívánatos képkockasebesség az IUIAnimationTimer::SetFrameRateThreshold meghívásával adható meg.

CAnimationController::OnAnimationValueChanged

A keretrendszer meghívja, amikor az animációs változó értéke megváltozott.

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

Paraméterek

pGroup
Egy olyan animációs csoportra mutató mutató, amely egy olyan animációs objektumot tartalmaz, amelynek az értéke megváltozott.

pObject
Egy animációs objektumra mutató mutató, amely egy olyan animációs változót tartalmaz, amelynek az értéke megváltozott.

Változó
Egy animációs változóra mutató mutató.

newValue
Új értéket ad meg.

prevValue
Az előző értéket adja meg.

Megjegyzések

Ez a metódus akkor hívható meg, ha az EnableValueChangedEvent használatával engedélyezi az animációs változó eseményeket, és egy adott animációs változót vagy animációs objektumot hív meg. Egy származtatott osztályban felülírható az alkalmazásspecifikus műveletek végrehajtása.

CAnimationController::OnBeforeAnimationStart

Közvetlenül az animáció ütemezése előtt hívja meg a keretrendszer.

virtual void OnBeforeAnimationStart(CAnimationGroup* pGroup);

Paraméterek

pGroup
Egy olyan animációs csoportra mutató mutató, amelynek animációja éppen indul.

Megjegyzések

Ez a hívás a kapcsolódó CWnd-hoz van irányítva, és felül lehet bírálni egy származtatott osztályban, hogy minden további műveletet végrehajtson, mielőtt az animáció elindul a megadott csoporthoz.

CAnimationController::OnHasPriorityCancel

A keretrendszer meghívta az ütemezési ütközések feloldásához.

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

Paraméterek

pGroupScheduled
Az a csoport, amely az aktuálisan ütemezett történettáblát birtokolja.

pGroupNew
Az ütemezés alatt álló új storyboard tulajdonosa csoport ütközik a pGroupScheduled által birtokolt ütemezett történettel.

priorityEffect
A pGroupNew-re gyakorolt lehetséges hatás, ha a pGroupScheduled magasabb prioritással rendelkezik.

Visszaadott érték

Igaz értéket kell visszaadnia, ha a pGroupNew tulajdonában lévő storyboard prioritással rendelkezik. HAMIS értéket kell visszaadnia, ha a pGroupScheduled tulajdonában lévő storyboard prioritással rendelkezik.

Megjegyzések

Ez a metódus akkor hívható meg, ha engedélyezi a prioritás-összehasonlító eseményeket a CAnimationController::EnablePriorityComparisonHandler használatával, és adja meg a UI_ANIMATION_PHT_CANCEL. Egy származtatott osztályban felülírható az alkalmazásspecifikus műveletek végrehajtása. A Ütközéskezeléssel kapcsolatos további információkért olvassa el a Windows Animation API dokumentációját.

CAnimationController::OnHasPriorityCompress

A keretrendszer meghívta az ütemezési ütközések feloldásához.

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

Paraméterek

pGroupScheduled
Az a csoport, amely az aktuálisan ütemezett történettáblát birtokolja.

pGroupNew
Az ütemezés alatt álló új storyboard tulajdonosa csoport ütközik a pGroupScheduled által birtokolt ütemezett történettel.

priorityEffect
A pGroupNew-re gyakorolt lehetséges hatás, ha a pGroupScheduled magasabb prioritással rendelkezik.

Visszaadott érték

Igaz értéket kell visszaadnia, ha a pGroupNew tulajdonában lévő storyboard prioritással rendelkezik. HAMIS értéket kell visszaadnia, ha a pGroupScheduled tulajdonában lévő storyboard prioritással rendelkezik.

Megjegyzések

Ez a metódus akkor hívható meg, ha a CAnimationController::EnablePriorityComparisonHandler használatával engedélyezi a prioritás-összehasonlító eseményeket, és megadja a UI_ANIMATION_PHT_COMPRESS. Egy származtatott osztályban felülírható az alkalmazásspecifikus műveletek végrehajtása. A Ütközéskezeléssel kapcsolatos további információkért olvassa el a Windows Animation API dokumentációját.

CAnimationController::OnHasPriorityConclude

A keretrendszer meghívta az ütemezési ütközések feloldásához.

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

Paraméterek

pGroupScheduled
Az a csoport, amely az aktuálisan ütemezett történettáblát birtokolja.

pGroupNew
Az ütemezés alatt álló új storyboard tulajdonosa csoport ütközik a pGroupScheduled által birtokolt ütemezett történettel.

priorityEffect
A pGroupNew-re gyakorolt lehetséges hatás, ha a pGroupScheduled magasabb prioritással rendelkezik.

Visszaadott érték

Igaz értéket kell visszaadnia, ha a pGroupNew tulajdonában lévő storyboard prioritással rendelkezik. HAMIS értéket kell visszaadnia, ha a pGroupScheduled tulajdonában lévő storyboard prioritással rendelkezik.

Megjegyzések

Ez a metódus akkor hívható meg, ha engedélyezi a prioritás-összehasonlító eseményeket a CAnimationController::EnablePriorityComparisonHandler használatával, és adja meg a UI_ANIMATION_PHT_CONCLUDE. Egy származtatott osztályban felülírható az alkalmazásspecifikus műveletek végrehajtása. A Ütközéskezeléssel kapcsolatos további információkért olvassa el a Windows Animation API dokumentációját.

CAnimationController::OnHasPriorityTrim

A keretrendszer meghívta az ütemezési ütközések feloldásához.

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

Paraméterek

pGroupScheduled
Az a csoport, amely az aktuálisan ütemezett történettáblát birtokolja.

pGroupNew
Az ütemezés alatt álló új storyboard tulajdonosa csoport ütközik a pGroupScheduled által birtokolt ütemezett történettel.

priorityEffect
A pGroupNew-re gyakorolt lehetséges hatás, ha a pGroupScheduled magasabb prioritással rendelkezik.

Visszaadott érték

Igaz értéket kell visszaadnia, ha a pGroupNew tulajdonában lévő storyboard prioritással rendelkezik. HAMIS értéket kell visszaadnia, ha a pGroupScheduled tulajdonában lévő storyboard prioritással rendelkezik.

Megjegyzések

Ez a metódus akkor hívható meg, ha engedélyezi a prioritás-összehasonlító eseményeket a CAnimationController::EnablePriorityComparisonHandler használatával, és adja meg a UI_ANIMATION_PHT_TRIM. Egy származtatott osztályban felülírható az alkalmazásspecifikus műveletek végrehajtása. A Ütközéskezeléssel kapcsolatos további információkért olvassa el a Windows Animation API dokumentációját.

CAnimationController::OnStoryboardStatusChanged

A keretrendszer meghívta, amikor a storyboard állapota megváltozott.

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

Paraméterek

pGroup
Egy olyan animációs csoportra mutató mutató, amely annak a történetnek a tulajdonosa, amelynek állapota megváltozott.

newStatus
Megadja az új állapotot.

previousStatus
Az előző állapotot adja meg.

Megjegyzések

Ez a metódus akkor hívható meg, ha a CAnimationController::EnableStoryboardEventHandler használatával engedélyezi a történeti eseményeket. Egy származtatott osztályban felülírható az alkalmazásspecifikus műveletek végrehajtása.

CAnimationController::OnStoryboardUpdated

A keretrendszer meghívta a storyboard frissítésekor.

virtual void OnStoryboardUpdated(CAnimationGroup* pGroup);

Paraméterek

pGroup
Mutató egy csoporthoz, amely a storyboard tulajdonosa.

Megjegyzések

Ez a metódus akkor hívható meg, ha a CAnimationController::EnableStoryboardEventHandler használatával engedélyezi a történeti eseményeket. Egy származtatott osztályban felülírható az alkalmazásspecifikus műveletek végrehajtása.

CAnimationController::RemoveAllAnimationGroups

Eltávolítja az összes animációs csoportot az animációvezérlőből.

void RemoveAllAnimationGroups();

Megjegyzések

Minden csoport törlődik, az alkalmazás szintjén tárolt mutatójukat érvényteleníteni kell. Ha a CAnimationGroup::m_bAutodestroyAnimationObjects egy törölt csoport esetében IGAZ, az adott csoporthoz tartozó összes animációs objektum törlődik; ellenkező esetben a szülőanimáció-vezérlőre mutató hivatkozások NULL értékűre lesznek állítva, és hozzáadhatók egy másik vezérlőhöz.

CAnimationController::RemoveAnimationGroup

Eltávolít egy megadott azonosítóval rendelkező animációs csoportot az animációvezérlőből.

void RemoveAnimationGroup(UINT32 nGroupID);

Paraméterek

nGroupID
Az animációs csoport azonosítóját adja meg.

Megjegyzések

Ez a módszer eltávolít egy animációs csoportot a csoportok belső listájából, és törli azt, ezért ha az adott animációs csoportra mutató mutatót tárolt, érvényteleníteni kell. Ha a CAnimationGroup::m_bAutodestroyAnimationObjects igaz, a csoporthoz tartozó összes animációs objektum törlődik; ellenkező esetben a szülőanimáció-vezérlőre mutató hivatkozások NULL értékűre lesznek állítva, és hozzáadhatók egy másik vezérlőhöz.

CAnimationController::RemoveAnimationObject

Animációs objektum eltávolítása az animációvezérlőből.

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

Paraméterek

pObject
Egy animációs objektumra mutató mutató.

bNoDelete
Ha ez a paraméter IGAZ, az objektum nem törlődik az eltávolításkor.

Megjegyzések

Eltávolít egy animációs objektumot az animációvezérlőből és az animációs csoportból. Hívja meg ezt a függvényt, ha egy adott objektumot már nem kell animálni, vagy ha át kell helyeznie az objektumot egy másik animációs vezérlőbe. Az utolsó esetben a bNoDelete értéknek IGAZnak kell lennie.

CAnimationController::RemoveTransitions

Eltávolítja a megadott csoporthoz tartozó animációs objektumok áttűnéseit.

void RemoveTransitions(UINT32 nGroupID);

Paraméterek

nGroupID
Megadja a csoportazonosítót.

Megjegyzések

A csoport az animációs objektumok fölé hurkol, és minden animációs objektumhoz meghívja a ClearTransitions(FALSE) függvényt. Ezt a metódust a keretrendszer hívja meg az animáció ütemezése után.

CAnimationController::ScheduleGroup

Animáció ütemezése.

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

Paraméterek

nGroupID
Az ütemezni kívánt animációs csoportazonosítót adja meg.

time
Megadja az ütemezési időt.

Visszaadott érték

IGAZ, ha az animációt sikeresen ütemezték. HAMIS, ha a storyboard nem lett létrehozva, vagy más hiba történik.

Megjegyzések

A bScheduleNow paraméterrel meg kell hívnia az AnimateGroupot HAMIS korábbi ScheduleGroup értékre. Megadhatja a kívánt animációs időt az IUIAnimationTimer::GetTime fájlból. Ha az időparaméter 0,0, az animáció az aktuális időpontra van ütemezve.

CAnimationController::SetRelatedWnd

Kapcsolatot hoz létre az animációvezérlő és az ablak között.

void SetRelatedWnd(CWnd* pWnd);

Paraméterek

pWnd
A beállítani kívánt ablakobjektumra mutató mutató.

Megjegyzések

Ha egy kapcsolódó CWnd-objektum be van állítva, az animációvezérlő automatikusan frissítheti (WM_PAINT üzenetet küldhet), ha az animációkezelő állapota megváltozott, vagy az időzítő a frissítési esemény bekövetkezése után történt.

CAnimationController::UpdateAnimationManager

Az animációkezelőt az összes animációs változó értékének frissítésére irányítja.

virtual void UpdateAnimationManager();

Megjegyzések

Ennek a metódusnak a meghívása az animációkezelőt az aktuális időpontra váltó, a forgatókönyvek állapotának szükség szerinti megváltoztatásával és az animációs változók megfelelő interpolált értékekre való frissítésével. Ez a metódus belsőleg meghívja az IUIAnimationTimer::GetTime(timeNow) és az IUIAnimationManager::Update(timeNow) metódust. A viselkedés testreszabásához felülbírálja ezt a metódust egy származtatott osztályban.

Lásd még

osztályok