Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
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.
Az összes animációs objektum alaposztálya.
Szemantika
class CAnimationBaseObject : public CObject;
Tagok
Nyilvános konstruktorok
| Név | Description |
|---|---|
| CAnimationBaseObject::CAnimationBaseObject | Túlterhelt. Animációs objektumot hoz létre. |
| CAnimationBaseObject::~CAnimationBaseObject | A destruktor. Egy animációs objektum elpusztításakor hívható meg. |
Nyilvános metódusok
| Név | Description |
|---|---|
| CAnimationBaseObject::ApplyTransitions | Áttűnéseket ad hozzá a storyboardhoz beágyazott animációs változóval. |
| CAnimationBaseObject::ClearTransitions | Eltávolítja az összes kapcsolódó áttűnést. |
| CAnimationBaseObject::ContainsVariable | Meghatározza, hogy egy animációs objektum tartalmaz-e egy adott animációs változót. |
| CAnimationBaseObject::CreateTransitions | Animációs objektumhoz társított áttűnések létrehozása. |
| CAnimationBaseObject::D etachFromController | Leválaszt egy animációs objektumot a szülőanimációs vezérlőről. |
| CAnimationBaseObject::EnableIntegerValueChangedEvent | Egész szám értékének módosítása eseménykezelő beállítása. |
| CAnimationBaseObject::EnableValueChangedEvent | Az Értékváltoztatás eseménykezelő beállítása. |
| CAnimationBaseObject::GetAutodestroyTransitions | Azt jelzi, hogy a kapcsolódó áttűnések automatikusan megsemmisülnek-e. |
| CAnimationBaseObject::GetGroupID | Az aktuális csoportazonosítót adja vissza. |
| CAnimationBaseObject::GetObjectID | Az aktuális objektumazonosítót adja vissza. |
| CAnimationBaseObject::GetUserData | Felhasználó által megadott adatokat ad vissza. |
| CAnimationBaseObject::SetAutodestroyTransitions | Beállít egy jelzőt, amely automatikusan megsemmisíti az áttűnéseket. |
| CAnimationBaseObject::SetID | Új azonosítókat állít be. |
| CAnimationBaseObject::SetUserData | Felhasználó által definiált adatok beállítása. |
Védett metódusok
| Név | Description |
|---|---|
| CAnimationBaseObject::GetAnimationVariableList | A tartalmazott animációs változók mutatóit gyűjti össze. |
| CAnimationBaseObject::SetParentAnimationObjects | Kapcsolatot hoz létre egy animációs objektumban található animációs változók és azok tárolója között. |
Védett adattagok
| Név | Description |
|---|---|
| CAnimationBaseObject::m_bAutodestroyTransitions | Megadja, hogy a kapcsolódó áttűnéseket automatikusan meg kell-e semmisíteni. |
| CAnimationBaseObject::m_dwUserData | A felhasználó által megadott adatokat tárolja. |
| CAnimationBaseObject::m_nGroupID | Megadja az animációs objektum csoportazonosítóját. |
| CAnimationBaseObject::m_nObjectID | Az animációs objektum objektumazonosítóját adja meg. |
| CAnimationBaseObject::m_pParentController | Mutató a szülőanimációs vezérlőre. |
Megjegyzések
Ez az osztály alapvető metódusokat implementál az összes animációs objektumhoz. Az animációs objektumok egy alkalmazás értékét, pontját, méretét, téglalapját vagy színét, valamint bármilyen egyéni entitást jelölhetnek. Az animációs objektumok animációs csoportokban vannak tárolva (lásd: CAnimationGroup). Minden csoport külön-külön animálható, és a storyboard analógjaként kezelhető. Az animációs objektumok logikai ábrázolásuktól függően egy vagy több animációs változót foglalnak bele (lásd: CAnimationVariable). A CAnimationRect például négy animációs változót tartalmaz – egy változót a téglalapok mindkét oldalához. Minden animációs objektumosztály túlterhelt AddTransition metódust tesz elérhetővé, amelyet áttűnések alkalmazásához kell használni a beágyazott animációs változókra. Az animációs objektumokat az objektumazonosító (opcionálisan) és a csoportazonosító alapján lehet azonosítani. Csoportazonosítóra van szükség ahhoz, hogy egy animációs objektumot a megfelelő csoportba helyezzen, de ha nincs megadva csoportazonosító, a rendszer az alapértelmezett 0 azonosítójú csoportba helyezi az objektumot. Ha más GroupID azonosítóval hívja meg a SetID-et, a rendszer áthelyez egy animációs objektumot egy másik csoportba (szükség esetén új csoportot hoz létre).
Öröklési hierarchia
CAnimationBaseObject
Requirements
Fejléc: afxanimationcontroller.h
CAnimationBaseObject::~CAnimationBaseObject
A destruktor. Egy animációs objektum elpusztításakor hívható meg.
virtual ~CAnimationBaseObject();
CAnimationBaseObject::ApplyTransitions
Áttűnéseket ad hozzá a storyboardhoz beágyazott animációs változóval.
virtual BOOL ApplyTransitions(
IUIAnimationStoryboard* pStoryboard,
BOOL bDependOnKeyframes);
Paraméterek
pStoryboard
Mutató egy történethez.
bDependOnKeyframes
HA HAMIS, ez a metódus csak azokat az áttűnéseket adja hozzá, amelyek nem függnek a kulcskerettől.
Visszaadott érték
IGAZ, ha sikeresen hozzáadta az áttűnéseket.
Megjegyzések
Az AddTransition (származtatott osztályokban túlterhelt metódusok) használatával hozzáadott kapcsolódó áttűnéseket ad hozzá a storyboardhoz.
CAnimationBaseObject::CAnimationBaseObject
Animációs objektumot hoz létre.
CAnimationBaseObject();
CAnimationBaseObject(
UINT32 nGroupID,
UINT32 nObjectID = (UINT32)-1,
DWORD dwUserData = 0);
Paraméterek
nGroupID
Megadja a csoportazonosítót.
nObjectID
Objektumazonosítót ad meg.
dwUserData
Felhasználó által definiált adatok, amelyek az animációs objektumhoz társíthatók, és később, futásidőben lekérhetők.
Megjegyzések
Animációs objektumokat hoz létre, és hozzárendeli az alapértelmezett objektumazonosítót (0) és a csoportazonosítót (0).
CAnimationBaseObject::ClearTransitions
Eltávolítja az összes kapcsolódó áttűnést.
virtual void ClearTransitions(BOOL bAutodestroy);
Paraméterek
bAutodestroy
Megadja, hogy az áttűnési objektumokat automatikusan megsemmisítse, vagy egyszerűen eltávolítsa őket a kapcsolódó listából.
Megjegyzések
Eltávolítja az összes kapcsolódó átmenetet, és megsemmisíti őket, ha a bAutodestroy vagy m_bAutodestroyTransitions jelző IGAZ. Az áttűnéseket csak akkor szabad automatikusan megsemmisíteni, ha nincsenek lefoglalva a veremen. Ha a fenti jelzők HAMISak, az áttűnéseket a rendszer eltávolítja a kapcsolódó áttűnések belső listájából.
CAnimationBaseObject::ContainsVariable
Meghatározza, hogy egy animációs objektum tartalmaz-e egy adott animációs változót.
virtual BOOL ContainsVariable(IUIAnimationVariable* pVariable);
Paraméterek
pVariable
Egy animációs változóra mutató mutató.
Visszaadott érték
IGAZ, ha az animációs változó az animációs objektumban található; egyéb esetben HAMIS.
Megjegyzések
Ez a módszer annak meghatározására használható, hogy a pVariable által megadott animációs változó egy animációs objektumban található-e. Egy animációs objektum típusától függően több animációs változót is tartalmazhat. A CAnimationColor például három változót tartalmaz, egyet minden színösszetevőhöz (piros, zöld és kék). Ha egy animációs változó értéke megváltozott, a Windows Animation API ValueChanged vagy IntegerValueChanged eseményeket küld (ha engedélyezve van), és az esemény paramétere az animációs változó IUIAnimationVariable felületére mutató mutató. Ez a módszer segít az egérmutatóról az animációra mutató mutató és a benne lévő COM-objektum között való lekérésében.
CAnimationBaseObject::CreateTransitions
Animációs objektumhoz társított áttűnések létrehozása.
BOOL CreateTransitions();
Visszaadott érték
IGAZ, ha az áttűnések sikeresen létrejöttek; egyéb esetben HAMIS.
Megjegyzések
Hurkok a származtatott animációs objektumba ágyazott animációs változók listájára, és átmeneteket hoz létre az egyes animációs változókhoz.
CAnimationBaseObject::D etachFromController
Leválaszt egy animációs objektumot a szülőanimációs vezérlőről.
void DetachFromController();
Megjegyzések
Ezt a metódust belsőleg használják.
CAnimationBaseObject::EnableIntegerValueChangedEvent
Egész szám értékének módosítása eseménykezelő beállítása.
virtual void EnableIntegerValueChangedEvent(
CAnimationController* pController,
BOOL bEnable);
Paraméterek
pController
Egy szülővezérlőre mutató mutató.
bEnable
Meghatározza, hogy engedélyezi vagy letiltja-e az egész számban módosított eseményt.
Megjegyzések
Ha engedélyezve van az Egész szám értékének módosítása eseménykezelő, akkor ezt az eseményt a CAnimationController::OnAnimationIntegerValueChanged metódusban kezelheti, amelyet felül kell bírálni egy CAnimationController-származtatott osztályban. Ezt a metódust minden alkalommal meghívjuk, amikor az animáció egészének értéke módosult.
CAnimationBaseObject::EnableValueChangedEvent
Az Értékváltoztatás eseménykezelő beállítása.
virtual void EnableValueChangedEvent(
CAnimationController* pController,
BOOL bEnable);
Paraméterek
pController
Egy szülővezérlőre mutató mutató.
bEnable
Megadja, hogy engedélyezi vagy letiltja-e az Értékváltoztatás eseményt.
Megjegyzések
Ha az Értékváltoztatott eseménykezelő engedélyezve van, ezt az eseményt a CAnimationController::OnAnimationValueChanged metódusban kezelheti, amelyet felül kell bírálni egy CAnimationController-származtatott osztályban. Ezt a metódust minden alkalommal meghívjuk, amikor az animáció értéke megváltozott.
CAnimationBaseObject::GetAnimationVariableList
A tartalmazott animációs változók mutatóit gyűjti össze.
virtual void GetAnimationVariableList(
CList<CAnimationVariable*,
CAnimationVariable*>& list) = 0;
Paraméterek
list
Egy animációs objektumban található animációs változókkal kitöltendő lista.
Megjegyzések
Ezt a tiszta virtuális metódust felül kell bírálni egy származtatott osztályban. Egy animációs objektum típusától függően egy vagy több animációs változót tartalmaz. A CAnimationPoint például két változót tartalmaz az X és az Y koordinátákhoz. A CAnimationBaseObject alaposztály implementál néhány általános metódust, amelyek az animációs változók listájában működnek: ApplyTransitions, ClearTransitions, EnableValueChangedEvent, EnableIntegerValueChangedEvent. Ezek a metódusok getAnimationVariableList-nek nevezik, amely egy származtatott osztályban van kitöltve egy adott animációs objektumban található tényleges animációs változókkal, majd hurkolja át a listát, és végrehajtja a szükséges műveleteket. Ha egyéni animációs objektumot hoz létre, hozzá kell adnia az objektumban található összes animációs változót .
CAnimationBaseObject::GetAutodestroyTransitions
Azt jelzi, hogy a kapcsolódó áttűnések automatikusan megsemmisülnek-e.
BOOL GetAutodestroyTransitions() const;
Visszaadott érték
Ha IGAZ, a kapcsolódó áttűnések automatikusan megsemmisülnek; ha HAMIS, az áttűnési objektumokat az alkalmazás meghívásával kell felszabadítani.
Megjegyzések
Alapértelmezés szerint ez a jelző IGAZ. Ezt a jelzőt csak akkor állítsa be, ha áttűnést rendelt a veremhez és/vagy az áttűnéseket a hívó alkalmazásnak el kell osztania.
CAnimationBaseObject::GetGroupID
Az aktuális csoportazonosítót adja vissza.
UINT32 GetGroupID() const;
Visszaadott érték
Jelenlegi csoportazonosító.
Megjegyzések
Ezzel a módszerrel lekérheti a csoportazonosítót. Ez 0, ha a csoportazonosító nincs explicit módon beállítva a konstruktorban vagy a SetID-ben.
CAnimationBaseObject::GetObjectID
Az aktuális objektumazonosítót adja vissza.
UINT32 GetObjectID() const;
Visszaadott érték
Aktuális objektumazonosító.
Megjegyzések
Ezzel a módszerrel lekérheti az objektumazonosítót. Ez 0, ha az objektumazonosító nincs explicit módon beállítva a konstruktorban vagy a SetID-ben.
CAnimationBaseObject::GetUserData
Felhasználó által megadott adatokat ad vissza.
DWORD GetUserData() const;
Visszaadott érték
Az egyéni adatok értéke.
Megjegyzések
Hívja meg ezt a metódust az egyéni adatok futásidőben való lekéréséhez. A visszaadott érték 0 lesz, ha nem inicializálták explicit módon a konstruktorban vagy a SetUserData-ban.
CAnimationBaseObject::m_bAutodestroyTransitions
Megadja, hogy a kapcsolódó áttűnéseket automatikusan meg kell-e semmisíteni.
BOOL m_bAutodestroyTransitions;
CAnimationBaseObject::m_dwUserData
A felhasználó által megadott adatokat tárolja.
DWORD m_dwUserData;
CAnimationBaseObject::m_nGroupID
Megadja az animációs objektum csoportazonosítóját.
UINT32 m_nGroupID;
CAnimationBaseObject::m_nObjectID
Az animációs objektum objektumazonosítóját adja meg.
UINT32 m_nObjectID;
CAnimationBaseObject::m_pParentController
Mutató a szülőanimációs vezérlőre.
CAnimationController* m_pParentController;
CAnimationBaseObject::SetAutodestroyTransitions
Beállít egy jelzőt, amely automatikusan megsemmisíti az áttűnéseket.
void SetAutodestroyTransitions(BOOL bValue);
Paraméterek
bValue
Megadja az automatikus megsemmisítés jelzőt.
Megjegyzések
Ezt a jelzőt csak akkor állítsa be, ha új operátorral foglalta le az áttűnési objektumokat. Ha valamilyen okból áttűnési objektumok vannak lefoglalva a veremen, az automatikus megsemmisítési jelzőnek HAMISnak kell lennie. Alapértelmezés szerint ez a jelző IGAZ.
CAnimationBaseObject::SetID
Új azonosítókat állít be.
void SetID(
UINT32 nObjectID,
UINT32 nGroupID = 0);
Paraméterek
nObjectID
Új objektumazonosítót ad meg.
nGroupID
Új csoportazonosítót ad meg.
Megjegyzések
Lehetővé teszi az objektumazonosító és a csoportazonosító módosítását. Ha az új csoportazonosító eltér az aktuális azonosítótól, a rendszer áthelyez egy animációs objektumot egy másik csoportba (szükség esetén új csoport jön létre).
CAnimationBaseObject::SetParentAnimationObjects
Kapcsolatot hoz létre egy animációs objektumban található animációs változók és azok tárolója között.
virtual void SetParentAnimationObjects();
Megjegyzések
Ez a segéd használható egy animációs objektumban található animációs változók és azok tárolója közötti kapcsolat kialakításához. Az animációs változók fölé hurkol, és egy szülőanimációs objektumra mutató mutatót állít be az egyes animációs változókhoz. Az aktuális implementációban a tényleges kapcsolat a CAnimationBaseObject::ApplyTransitions fájlban jön létre, ezért a visszamutatók csak a CAnimationGroup::Animate meghívásáig vannak beállítva. A kapcsolat ismerete hasznos lehet az események feldolgozásakor, és be kell szereznie egy szülőanimációs objektumot a CAnimationVariable-ből. Használja a CAnimationVariable::GetParentAnimationObject parancsot.
CAnimationBaseObject::SetUserData
Felhasználó által definiált adatok beállítása.
void SetUserData (DWORD dwUserData);
Paraméterek
dwUserData
Megadja az egyéni adatokat.
Megjegyzések
Ezzel a módszerrel egyéni adatokat társíthat egy animációs objektumhoz. Ezeket az adatokat később, futásidőben lekérheti a GetUserData.