CAnimationGroup Sınıfı
Animasyonu tanımlamak için animasyon görsel taslaklarını, animasyon nesnelerini ve geçişleri birleştiren bir animasyon grubu uygular.
Sözdizimi
class CAnimationGroup;
Üyeler
Ortak Oluşturucular
Veri Akışı Adı | Açıklama |
---|---|
CAnimationGroup::CAnimationGroup | Animasyon grubu oluşturur. |
CAnimationGroup::~CAnimationGroup | Yok edici. Bir animasyon grubu yok edilirken çağrılır. |
Genel Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
CAnimationGroup::Animate | Gruba animasyon ekler. |
CAnimationGroup::ApplyTransitions | Animasyon nesnelerine geçişler uygular. |
CAnimationGroup::FindAnimationObject | Belirtilen animasyon değişkenini içeren bir animasyon nesnesi bulur. |
CAnimationGroup::GetGroupID | GroupID döndürür. |
CAnimationGroup::RemoveKeyframes | Bir animasyon grubuna ait tüm ana kareleri kaldırır ve isteğe bağlı olarak yok eder. |
CAnimationGroup::RemoveTransitions | Bir animasyon grubuna ait animasyon nesnelerinden geçişleri kaldırır. |
CAnimationGroup::Schedule | Bir animasyonu belirtilen zamanda zamanlar. |
CAnimationGroup::SetAutodestroyTransitions | Gruba ait tüm animasyon nesnelerini otomatik olarak yok eder. |
Korumalı Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
CAnimationGroup::AddKeyframes | Görsel taslaklara ana kareler ekleyen yardımcı. |
CAnimationGroup::AddTransitions | Görsel taslaklara geçişler ekleyen yardımcı. |
CAnimationGroup::CreateTransitions | COM geçiş nesneleri oluşturan bir yardımcı. |
Ortak Veri Üyeleri
Veri Akışı Adı | Açıklama |
---|---|
CAnimationGroup::m_bAutoclearTransitions | Gruba ait animasyon nesnelerinden geçişlerin nasıl temizlendiğini belirtir. Bu üye TRUE ise, bir animasyon zamanlandığında geçişler otomatik olarak kaldırılır. Aksi takdirde geçişleri el ile kaldırmanız gerekir. |
CAnimationGroup::m_bAutodestroyAnimationObjects | Animasyon nesnelerinin nasıl yok yapılacağını belirtir. Bu parametre TRUE ise, grup yok edildiğinde animasyon nesneleri otomatik olarak yok edilir. Aksi takdirde animasyon nesneleri el ile yok edilmelidir. Varsayılan değer YANLIŞ'tır. Yalnızca gruba ait tüm animasyon nesneleri yeni işleciyle dinamik olarak ayrılırsa bu değeri TRUE olarak ayarlayın. |
CAnimationGroup::m_bAutodestroyKeyframes | Anahtar çerçevelerin nasıl yok edileceklerini belirtir. Bu değer TRUE ise, tüm anahtar kareler kaldırılır ve yok edilir; aksi takdirde yalnızca listeden kaldırılırlar. Varsayılan değer DOĞRU'dur. |
CAnimationGroup::m_lstAnimationObjects | Animasyon nesnelerinin listesini içerir. |
CAnimationGroup::m_lstKeyFrames | Ana karelerin listesini içerir. |
CAnimationGroup::m_pStoryboard | Animasyon görsel taslaklarını gösterir. Bu işaretçi yalnızca Animate'te yapılan çağrıdan sonra geçerlidir. |
Korumalı Veri Üyeleri
Veri Akışı Adı | Açıklama |
---|---|
CAnimationGroup::m_nGroupID | Animasyon grubunun benzersiz tanımlayıcısı. |
CAnimationGroup::m_pParentController | Bu grubun ait olduğu animasyon denetleyicisi işaretçisi. |
Açıklamalar
Animasyon grupları, CAnimationController::AddAnimationObject kullanarak animasyon nesneleri eklediğinizde animasyon denetleyicisi (CAnimationController) tarafından otomatik olarak oluşturulur. Animasyon grubu, genellikle animasyon gruplarını işlemek için parametre olarak alınan GroupID ile tanımlanır. GroupID, yeni bir animasyon grubuna eklenen ilk animasyon nesnesinden alınır. CAnimationController::AnimateGroup çağrısından sonra kapsüllenmiş bir animasyon görsel taslak oluşturulur ve genel üye m_pStoryboard aracılığıyla erişilebilir.
Devralma Hiyerarşisi
CAnimationGroup
Gereksinimler
Üst bilgi: afxanimationcontroller.h
CAnimationGroup::~CAnimationGroup
Yok edici. Bir animasyon grubu yok edilirken çağrılır.
~CAnimationGroup();
CAnimationGroup::AddKeyframes
Görsel taslaklara ana kareler ekleyen yardımcı.
void AddKeyframes(IUIAnimationStoryboard* pStoryboard, BOOL bAddDeep);
Parametreler
pStoryboard
Görsel taslak COM nesnesinin işaretçisi.
bAddDeep
Bu yöntemin diğer ana karelere bağlı görsel taslak ana karelerine eklenip eklenmeyeceğini belirtir.
CAnimationGroup::AddTransitions
Görsel taslaklara geçişler ekleyen yardımcı.
void AddTransitions(
IUIAnimationStoryboard* pStoryboard,
BOOL bDependOnKeyframes);
Parametreler
pStoryboard
Görsel taslak COM nesnesinin işaretçisi.
bDependOnKeyframes
CAnimationGroup::Animate
Gruba animasyon ekler.
BOOL Animate(
IUIAnimationManager* pManager,
IUIAnimationTimer* pTimer,
BOOL bScheduleNow);
Parametreler
pManager
pTimerbScheduleNow
Dönüş Değeri
Yöntem başarılı olursa TRUE; aksi takdirde YANLIŞ.
Açıklamalar
Bu yöntem bir iç görsel taslak oluşturur, geçişler oluşturur ve uygular ve bScheduleNow TRUE ise bir animasyon zamanlar. bScheduleNow YANLIŞ ise, animasyonu belirtilen zamanda başlatmak için Schedule çağrısı yapmanız gerekir.
CAnimationGroup::ApplyTransitions
Animasyon nesnelerine geçişler uygular.
void ApplyTransitions();
Açıklamalar
Bu yöntem, görsel taslak oluşturulmadıysa hata ayıklama modunda ASSERTS. Önce tüm geçişleri oluşturur, ardından "statik" ana kareler (uzaklıklara bağlı ana kareler) ekler, anahtar karelere bağımlı olmayan geçişler ekler, geçişlere ve diğer ana karelere bağlı olarak ana kareler ekler ve en sonunda anahtar karelere bağlı geçişler ekler.
CAnimationGroup::CAnimationGroup
Animasyon grubu oluşturur.
CAnimationGroup(CAnimationController* pParentController, UINT32 nGroupID);
Parametreler
pParentController
Grup oluşturan animasyon denetleyicisi işaretçisi.
nGroupID
GroupID değerini belirtir.
CAnimationGroup::CreateTransitions
COM geçiş nesneleri oluşturan bir yardımcı.
BOOL CreateTransitions();
Dönüş Değeri
TRUE yöntemi başarılı olur, aksi takdirde YANLIŞ olur.
CAnimationGroup::FindAnimationObject
Belirtilen animasyon değişkenini içeren bir animasyon nesnesi bulur.
CAnimationBaseObject* FindAnimationObject(IUIAnimationVariable* pVariable);
Parametreler
pVariable
Animasyon değişkeni işaretçisi.
Dönüş Değeri
Animasyon nesnesi işaretçisi veya animasyon nesnesi bulunamazsa NULL.
CAnimationGroup::GetGroupID
GroupID döndürür.
UINT32 GetGroupID() const;
Dönüş Değeri
Grup tanımlayıcısı.
CAnimationGroup::m_bAutoclearTransitions
Gruba ait animasyon nesnelerinden geçişlerin nasıl temizlendiğini belirtir. Bu üye TRUE ise, bir animasyon zamanlandığında geçişler otomatik olarak kaldırılır. Aksi takdirde geçişleri el ile kaldırmanız gerekir.
BOOL m_bAutoclearTransitions;
CAnimationGroup::m_bAutodestroyAnimationObjects
Animasyon nesnelerinin nasıl yok yapılacağını belirtir. Bu parametre TRUE ise, grup yok edildiğinde animasyon nesneleri otomatik olarak yok edilir. Aksi takdirde animasyon nesneleri el ile yok edilmelidir. Varsayılan değer YANLIŞ'tır. Yalnızca gruba ait tüm animasyon nesneleri yeni işleciyle dinamik olarak ayrılırsa bu değeri TRUE olarak ayarlayın.
BOOL m_bAutodestroyAnimationObjects;
CAnimationGroup::m_bAutodestroyKeyframes
Anahtar çerçevelerin nasıl yok edileceklerini belirtir. Bu değer TRUE ise, tüm anahtar kareler kaldırılır ve yok edilir; aksi takdirde yalnızca listeden kaldırılırlar. Varsayılan değer DOĞRU'dur.
BOOL m_bAutodestroyKeyframes;
CAnimationGroup::m_lstAnimationObjects
Animasyon nesnelerinin listesini içerir.
CObList m_lstAnimationObjects;
CAnimationGroup::m_lstKeyFrames
Ana karelerin listesini içerir.
CObList m_lstKeyFrames;
CAnimationGroup::m_nGroupID
Animasyon grubunun benzersiz tanımlayıcısı.
UINT32 m_nGroupID;
CAnimationGroup::m_pParentController
Bu grubun ait olduğu animasyon denetleyicisi işaretçisi.
CAnimationController* m_pParentController;
CAnimationGroup::m_pStoryboard
Animasyon görsel taslaklarını gösterir. Bu işaretçi yalnızca Animate'te yapılan çağrıdan sonra geçerlidir.
ATL::CComPtr<IUIAnimationStoryboard> m_pStoryboard;
CAnimationGroup::RemoveKeyframes
Bir animasyon grubuna ait tüm ana kareleri kaldırır ve isteğe bağlı olarak yok eder.
void RemoveKeyframes();
Açıklamalar
m_bAutodestroyKeyframes üye TRUE ise, anahtar kareler kaldırılır ve yok edilir, aksi takdirde ana kareler iç anahtar kareler listesinden kaldırılır.
CAnimationGroup::RemoveTransitions
Bir animasyon grubuna ait animasyon nesnelerinden geçişleri kaldırır.
void RemoveTransitions();
Açıklamalar
m_bAutoclearTransitions bayrağı TRUE olarak ayarlanırsa, bu yöntem gruba ait tüm animasyon nesnelerini döngüye alır ve CAnimationObject::ClearTransitions(FALSE) öğesini çağırır.
CAnimationGroup::Schedule
Bir animasyonu belirtilen zamanda zamanlar.
BOOL Schedule(IUIAnimationTimer* pTimer, UI_ANIMATION_SECONDS time);
Parametreler
pTimer
Animasyon zamanlayıcı işaretçisi.
Saat
Animasyonu zamanlamak için gereken zamanı belirtir.
Dönüş Değeri
Yöntem başarılı olursa TRUE; Yöntem başarısız olursa veya Animate çağrılmadıysa, bScheduleNow FALSE olarak ayarlanmışsa YANLIŞ.
Açıklamalar
Belirtilen zamanda bir animasyon zamanlamak için bu işlevi çağırın. Önce bScheduleNow değeri YANLIŞ olarak ayarlanmış olarak Animate'i çağırmanız gerekir.
CAnimationGroup::SetAutodestroyTransitions
Gruba ait tüm animasyon nesnelerini otomatik olarak yok eder.
void SetAutodestroyTransitions(BOOL bAutoDestroy = TRUE);
Parametreler
bAutoDestroy
Geçişlerin nasıl yokedilmesini belirtir.
Açıklamalar
Yalnızca yığında geçişler ayırdığınızda bu değeri YANLIŞ olarak ayarlayın. Varsayılan değer TRUE olduğundan, yeni işlecini kullanarak geçiş nesnelerinin ayrılması kesinlikle önerilir.