CAnimationController Sınıfı
Animasyonları oluşturmak ve yönetmek için merkezi bir arabirim sağlayan animasyon denetleyicisini uygular.
Sözdizimi
class CAnimationController : public CObject;
Üyeler
Ortak Oluşturucular
Veri Akışı Adı | Açıklama |
---|---|
CAnimationController::CAnimationController | Animasyon denetleyicisi oluşturur. |
CAnimationController::~CAnimationController | Yok edici. Animasyon denetleyicisi nesnesi yok edilirken çağrılır. |
Genel Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
CAnimationController::AddAnimationObject | Animasyon denetleyicisine ait bir gruba animasyon nesnesi ekler. |
CAnimationController::AddKeyframeToGroup | Gruba bir ana kare ekler. |
CAnimationController::AnimateGroup | Bir grubu animasyonu çalıştıracak şekilde hazırlar ve isteğe bağlı olarak zamanlar. |
CAnimationController::CleanUpGroup | Aşırı yüklendi. Animasyon zamanlandığında grubu temizlemek için çerçeve tarafından çağrılır. |
CAnimationController::CreateKeyframe | Aşırı yüklendi. Geçişe bağlı olan bir anahtar çerçeve oluşturur ve bunu belirtilen gruba ekler. |
CAnimationController::EnableAnimationManagerEvent | Animasyon yöneticisinin durumu değiştiğinde çağıracak bir işleyici ayarlar veya serbest bırakır. |
CAnimationController::EnableAnimationTimerEventHandler | Zamanlama olayları için bir işleyici ve zamanlama güncelleştirmeleri için işleyici ayarlar veya yayınlar. |
CAnimationController::EnablePriorityComparisonHandler | Zamanlanmış bir görsel şeridin iptal edilebileceğini, sonlandırılabildiğini, kırpılıp kırpılamayacağını veya sıkıştırılıp sıkıştırılamayacağını belirlemek için çağrılacak öncelik karşılaştırma işleyicisini ayarlar veya yayınlar. |
CAnimationController::EnableStoryboardEventHandler | Görsel taslak durumu ve güncelleştirme olayları için bir işleyici ayarlar veya yayınlar. |
CAnimationController::FindAnimationGroup | Aşırı yüklendi. Görsel şeridine göre bir animasyon grubu bulur. |
CAnimationController::FindAnimationObject | Belirtilen animasyon değişkenlerini içeren animasyon nesnesini bulur. |
CAnimationController::GetKeyframeStoryboardStart | Görsel taslak başlangıcını tanımlayan bir ana kare döndürür. |
CAnimationController::GetUIAnimationManager | Kapsüllenmiş IUIAnimationManager nesnesine erişim sağlar. |
CAnimationController::GetUIAnimationTimer | Kapsüllenmiş IUIAnimationTimer nesnesine erişim sağlar. |
CAnimationController::GetUITransitionFactory | Geçiş kitaplığı oluşturulamadıysa IUIAnimationTransitionFactory arabirimi veya NULL işaretçisi. |
CAnimationController::GetUITransitionLibrary | Kapsüllenmiş IUIAnimationTransitionLibrary nesnesine erişim sağlar. |
CAnimationController::IsAnimationInProgress | En az bir grubun animasyon oynatıp oynatmadığını bildirir. |
CAnimationController::IsValid | Animasyon denetleyicisinin geçerli olup olmadığını bildirir. |
CAnimationController::OnAnimationIntegerValueChanged | Animasyon değişkeninin tamsayı değeri değiştiğinde çerçeve tarafından çağrılır. |
CAnimationController::OnAnimationManagerStatusChanged | Animasyon yöneticisinden StatusChanged olayına yanıt olarak çerçeve tarafından çağrılır. |
CAnimationController::OnAnimationTimerPostUpdate | Animasyon güncelleştirmesi tamamlandıktan sonra çerçeve tarafından çağrılır. |
CAnimationController::OnAnimationTimerPreUpdate | Animasyon güncelleştirmesi başlamadan önce çerçeve tarafından çağrılır. |
CAnimationController::OnAnimationTimerRenderingTooSlow | Animasyon için işleme kare hızı istenen en düşük kare hızının altına düştüğünde çerçeve tarafından çağrılır. |
CAnimationController::OnAnimationValueChanged | Animasyon değişkeninin değeri değiştiğinde çerçeve tarafından çağrılır. |
CAnimationController::OnBeforeAnimationStart | Animasyon zamanlanmasından hemen önce çerçeve tarafından çağrılır. |
CAnimationController::OnHasPriorityCancel | Zamanlama çakışmalarını çözmek için çerçeve tarafından çağrılır. |
CAnimationController::OnHasPriorityCompress | Zamanlama çakışmalarını çözmek için çerçeve tarafından çağrılır. |
CAnimationController::OnHasPriorityConclude | Zamanlama çakışmalarını çözmek için çerçeve tarafından çağrılır. |
CAnimationController::OnHasPriorityTrim | Zamanlama çakışmalarını çözmek için çerçeve tarafından çağrılır. |
CAnimationController::OnStoryboardStatusChanged | Görsel taslak durumu değiştiğinde çerçeve tarafından çağrılır. |
CAnimationController::OnStoryboardUpdated | Görsel taslak güncelleştirildiğinde çerçeve tarafından çağrılır. |
CAnimationController::RemoveAllAnimationGroups | Tüm animasyon gruplarını animasyon denetleyicisinden kaldırır. |
CAnimationController::RemoveAnimationGroup | Belirtilen kimlikli animasyon grubunu animasyon denetleyicisinden kaldırır. |
CAnimationController::RemoveAnimationObject | Animasyon denetleyicisinden animasyon nesnesi kaldırma. |
CAnimationController::RemoveTransitions | Belirtilen gruba ait animasyon nesnelerinden geçişleri kaldırır. |
CAnimationController::ScheduleGroup | Animasyon zamanlar. |
CAnimationController::SetRelatedWnd | Animasyon denetleyicisi ile pencere arasında bir ilişki kurar. |
CAnimationController::UpdateAnimationManager | Animasyon yöneticisini tüm animasyon değişkenlerinin değerlerini güncelleştirmeye yönlendirir. |
Korumalı Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
CAnimationController::CleanUpGroup | Aşırı yüklendi. Grubu temizleyen bir yardımcı. |
CAnimationController::OnAfterSchedule | Belirtilen grup için bir animasyon zamanlandığında çerçeve tarafından çağrılır. |
Korumalı Veri Üyeleri
Veri Akışı Adı | Açıklama |
---|---|
CAnimationController::gkeyframeStoryboardStart | Görsel taslak başlangıcını temsil eden bir ana kare. |
CAnimationController::m_bIsValid | Animasyon denetleyicisinin geçerli olup olmadığını belirtir. Geçerli işletim sistemi Windows Animasyon API'sini desteklemiyorsa bu üye FALSE olarak ayarlanır. |
CAnimationController::m_lstAnimationGroups | Bu animasyon denetleyicisine ait animasyon gruplarının listesi. |
CAnimationController::m_pAnimationManager | Animasyon Yöneticisi COM nesnesinin işaretçisini depolar. |
CAnimationController::m_pAnimationTimer | Animasyon Zamanlayıcı COM nesnesinin işaretçisini depolar. |
CAnimationController::m_pRelatedWnd | animasyon yöneticisinin durumu değiştiğinde veya güncelleştirme sonrası olayı oluştuğunda otomatik olarak yeniden çizilebilen ilgili bir CWnd nesnesine yönelik bir işaretçi. NULL olabilir. |
CAnimationController::m_pTransitionFactory | Transition Factory COM nesnesine yönelik bir işaretçi depolar. |
CAnimationController::m_pTransitionLibrary | Geçiş Kitaplığı COM nesnesinin işaretçisini depolar. |
Açıklamalar
CAnimationController sınıfı, animasyonları yöneten anahtar sınıfıdır. Uygulamada bir veya daha fazla animasyon denetleyicisi örneği oluşturabilir ve isteğe bağlı olarak, CAnimationController::SetRelatedWnd kullanarak bir animasyon denetleyicisi örneğini bir CWnd nesnesine bağlayabilirsiniz. Animasyon yöneticisi durumu değiştiğinde veya animasyon zamanlayıcısı güncelleştirildiğinde ilgili pencereye otomatik olarak WM_PAINT ileti göndermek için bu bağlantı gereklidir. Bu ilişkiyi etkinleştirmezseniz, animasyonu el ile görüntüleyen bir pencereyi yeniden çizmeniz gerekir. Bu amaçla CAnimationController'dan bir sınıf türetebilir ve OnAnimationManagerStatusChanged ve/veya OnAnimationTimerPostUpdate'i geçersiz kılabilir ve gerektiğinde bir veya daha fazla pencereyi geçersiz kılabilirsiniz.
Devralma Hiyerarşisi
CAnimationController
Gereksinimler
Üst bilgi: afxanimationcontroller.h
CAnimationController::~CAnimationController
Yok edici. Animasyon denetleyicisi nesnesi yok edilirken çağrılır.
virtual ~CAnimationController(void);
CAnimationController::AddAnimationObject
Animasyon denetleyicisine ait bir gruba animasyon nesnesi ekler.
CAnimationGroup* AddAnimationObject(CAnimationBaseObject* pObject);
Parametreler
pObject
Animasyon nesnesinin işaretçisi.
Dönüş Değeri
İşlev başarılı olursa pObject'in eklendiği mevcut veya yeni animasyon grubuna yönelik bir işaretçi; pObject başka bir animasyon denetleyicisine ait bir gruba zaten eklenmişse NULL.
Açıklamalar
Animasyon denetleyicisine bir animasyon nesnesi eklemek için bu yöntemi çağırın. Bir nesne, nesnenin GroupID değerine göre bir gruba eklenir (bkz. CAnimationBaseObject::SetID). Animasyon denetleyicisi, belirtilen GroupID ile eklenen ilk nesneyse yeni bir grup oluşturur. Animasyon nesnesi yalnızca bir animasyon denetleyicisine eklenebilir. Başka bir denetleyiciye nesne eklemeniz gerekiyorsa, önce RemoveAnimationObject'i çağırabilirsiniz. Bir gruba zaten eklenmiş olan bir nesne için SetID'yi yeni GroupID ile çağırırsanız, nesne eski gruptan kaldırılır ve belirtilen kimliğe sahip başka bir gruba eklenir.
CAnimationController::AddKeyframeToGroup
Gruba bir ana kare ekler.
BOOL AddKeyframeToGroup(
UINT32 nGroupID,
CBaseKeyFrame* pKeyframe);
Parametreler
nGroupID
Grup Kimliğini belirtir.
pKeyframe
Bir ana kareye işaret eden bir işaretçi.
Dönüş Değeri
İşlev başarılı olursa TRUE; aksi takdirde YANLIŞ.
Açıklamalar
Genellikle bu yöntemi çağırmanız gerekmez, bunun yerine CAnimationController::CreateKeyframe kullanın; bu da oluşturulan ana bilgisayarı otomatik olarak oluşturur ve gruba ekler.
CAnimationController::AnimateGroup
Bir grubu animasyonu çalıştıracak şekilde hazırlar ve isteğe bağlı olarak zamanlar.
BOOL AnimateGroup(
UINT32 nGroupID,
BOOL bScheduleNow = TRUE);
Parametreler
nGroupID
GroupID değerini belirtir.
bScheduleNow
Animasyonların hemen çalıştırılıp çalıştırılmayacağını belirtir.
Dönüş Değeri
Animasyon başarıyla zamanlandıysa ve çalıştırıldıysa TRUE.
Açıklamalar
Bu yöntem, görsel taslak oluşturma, animasyon değişkenleri ekleme, geçişleri uygulama ve ana kareleri ayarlama gibi gerçek işi yapar. bScheduleNow değerini YANLIŞ olarak ayarlarsanız zamanlamayı geciktirebilirsiniz. Bu durumda, belirtilen grup animasyon için ayarlanmış bir görsel taslak barındıracaktır. Bu noktada görsel taslak ve animasyon değişkenleri için olayları ayarlayabilirsiniz. Animasyonu gerçekten çalıştırmanız gerektiğinde CAnimationController::ScheduleGroup çağrısını çağırın.
CAnimationController::CAnimationController
Animasyon denetleyicisi oluşturur.
CAnimationController(void);
CAnimationController::CleanUpGroup
Animasyon zamanlandığında grubu temizlemek için çerçeve tarafından çağrılır.
void CleanUpGroup(UINT32 nGroupID);
void CleanUpGroup(CAnimationGroup* pGroup);
Parametreler
nGroupID
GroupID değerini belirtir.
pGroup
Temizlemek için animasyon grubuna yönelik bir işaretçi.
Açıklamalar
Bu yöntem, bir animasyon zamanlandıktan sonra ilgili olmadıklarından, belirtilen gruptaki tüm geçişleri ve ana kareleri kaldırır.
CAnimationController::CreateKeyframe
Geçişe bağlı olan bir anahtar çerçeve oluşturur ve bunu belirtilen gruba ekler.
CKeyFrame* CreateKeyframe(
UINT32 nGroupID,
CBaseTransition* pTransition);
CKeyFrame* CreateKeyframe(
UINT32 nGroupID,
CBaseKeyFrame* pKeyframe,
UI_ANIMATION_SECONDS offset = 0.0);
Parametreler
nGroupID
Ana karenin oluşturulduğu Grup Kimliğini belirtir.
pTransition
Geçiş işaretçisi. Bu geçiş sonrasında ana kare görsel taslak içine eklenecektir.
pKeyframe
Bu ana kare için temel anahtar kare işaretçisi.
fark
pKeyframe tarafından belirtilen temel ana kareden saniye cinsinden uzaklık.
Dönüş Değeri
İşlev başarılı olursa yeni oluşturulan ana kareye yönelik bir işaretçi.
Açıklamalar
Döndürülen işaretçiyi depolayabilir ve yeni oluşturulan ana karedeki diğer ana kareleri temel alabilirsiniz (ikinci aşırı yüklemeye bakın). Geçişleri ana karelerde başlatmak mümkündür. Bkz. CBaseTransition::SetKeyframes. Animasyon grupları tarafından otomatik olarak silindiklerinden, bu şekilde oluşturulan ana kareleri silmeniz gerekmez. Diğer anahtar kareleri ve geçişleri temel alan ana kareler oluştururken dikkatli olun ve döngüsel başvurulardan kaçının.
CAnimationController::EnableAnimationManagerEvent
Animasyon yöneticisinin durumu değiştiğinde çağıracak bir işleyici ayarlar veya serbest bırakır.
virtual BOOL EnableAnimationManagerEvent(BOOL bEnable = TRUE);
Parametreler
bEnable
İşleyici ayarlanıp ayarlanmayacağını veya serbest bırakılıp bırakılmayacağını belirtir.
Dönüş Değeri
İşleyici başarıyla ayarlandıysa veya serbest bırakıldıysa TRUE.
Açıklamalar
Bir işleyici ayarlandığında (etkinleştirildiğinde) Animasyon yöneticisinin durumu değiştiğinde Windows Animasyonu OnAnimationManagerStatusChanged öğesini çağırır.
CAnimationController::EnableAnimationTimerEventHandler
Zamanlama olayları için bir işleyici ve zamanlama güncelleştirmeleri için işleyici ayarlar veya yayınlar.
virtual BOOL EnableAnimationTimerEventHandler(
BOOL bEnable = TRUE,
UI_ANIMATION_IDLE_BEHAVIOR idleBehavior = UI_ANIMATION_IDLE_BEHAVIOR_DISABLE);
Parametreler
bEnable
İşleyicilerin ayarlanıp ayarlanmayacağını veya serbest bırakılıp bırakılmayacağını belirtir.
idleBehavior
Zamanlayıcı güncelleştirme işleyicisi için boşta kalma davranışını belirtir.
Dönüş Değeri
İşleyiciler başarıyla ayarlandıysa veya serbest bırakıldıysa TRUE; Bu yöntem, işleyiciler serbest bırakılmadan ikinci kez çağrılırsa veya başka bir hata oluşursa YANLIŞ.
Açıklamalar
İşleyiciler ayarlandığında (etkinleştirildiğinde) Windows Animasyon API'sinde OnAnimationTimerPreUpdate, OnAnimationTimerPostUpdate, OnRenderingTooSlow yöntemleri çağrılır. Windows Animasyon API'sinin görsel taslaklarını güncelleştirmesine izin vermek için animasyon zamanlayıcılarını etkinleştirmeniz gerekir. Aksi takdirde, animasyon yöneticisini tüm animasyon değişkenlerinin değerlerini güncelleştirmeye yönlendirmek için CAnimationController::UpdateAnimationManager çağrısı yapmanız gerekir.
CAnimationController::EnablePriorityComparisonHandler
Zamanlanmış bir görsel şeridin iptal edilebileceğini, sonlandırılabildiğini, kırpılıp kırpılamayacağını veya sıkıştırılıp sıkıştırılamayacağını belirlemek için çağrılacak öncelik karşılaştırma işleyicisini ayarlar veya yayınlar.
virtual BOOL EnablePriorityComparisonHandler(DWORD dwHandlerType);
Parametreler
dwHandlerType
Ayarlanacağı veya yayınlanacağı işleyicileri belirten UI_ANIMATION_PHT_ bayraklarının (bkz. açıklamalar) birleşimi.
Dönüş Değeri
İşleyici başarıyla ayarlandıysa veya serbest bırakıldıysa TRUE.
Açıklamalar
İşleyici ayarlandığında (etkinleştirildiğinde) Windows Animasyonu dwHandlerType'a bağlı olarak aşağıdaki sanal yöntemleri çağırır: OnHasPriorityCancel, OnHasPriorityConclude, OnHasPriorityTrim, OnHasPriorityCompress. dwHandler aşağıdaki bayrakların bir bileşimi olabilir: UI_ANIMATION_PHT_NONE - UI_ANIMATION_PHT_CANCEL tüm işleyicileri serbest bırakma - Karşılaştırma işleyicisini iptal et UI_ANIMATION_PHT_CONCLUDE ayarlama - Karşılaştırma işleyicisini sonlandır UI_ANIMATION_PHT_COMPRESS ayarlama - Karşılaştırma işleyicisini sıkıştır UI_ANIMATION_PHT_TRIM ayarlama - Kırpma karşılaştırma işleyicisini ayarlama UI_ANIMATION_PHT_CANCEL_REMOVE - karşılaştırma işleyicisini iptal et UI_ANIMATION_PHT_CONCLUDE_REMOVE kaldırma - Karşılaştırma işleyicisini sonlandır UI_ANIMATION_PHT_COMPRESS_REMOVE - UI_ANIMATION_PHT_TRIM_REMOVE sıkıştırma karşılaştırma işleyicisini kaldırma - Kırpma karşılaştırma işleyicisini kaldırma
CAnimationController::EnableStoryboardEventHandler
Görsel taslak durumu ve güncelleştirme olayları için bir işleyici ayarlar veya yayınlar.
virtual BOOL EnableStoryboardEventHandler(
UINT32 nGroupID,
BOOL bEnable = TRUE);
Parametreler
nGroupID
Grup Kimliğini belirtir.
bEnable
İşleyici ayarlanıp ayarlanmayacağını veya serbest bırakılıp bırakılmayacağını belirtir.
Dönüş Değeri
İşleyici başarıyla ayarlandıysa veya serbest bırakıldıysa TRUE; Belirtilen animasyon grubu bulunursa veya belirtilen grubun animasyonu başlatılmamışsa ve iç görsel taslak NULL ise YANLIŞ.
Açıklamalar
bir işleyici ayarlandığında (etkin) Windows Animasyon API'sinde OnStoryboardStatusChanges ve OnStoryboardUpdated sanal yöntemleri çağrılır. Belirtilen animasyon grubu için CAnimationController::Animate çağrıldıktan sonra bir işleyici ayarlanmalıdır çünkü kapsüllenmiş IUIAnimationStoryboard nesnesi oluşturur.
CAnimationController::FindAnimationGroup
Bir animasyon grubunu Grup Kimliğine göre bulur.
CAnimationGroup* FindAnimationGroup(UINT32 nGroupID);
CAnimationGroup* FindAnimationGroup(IUIAnimationStoryboard* pStoryboard);
Parametreler
nGroupID
Bir GroupID belirtir.
pStoryboard
Görsel taslak işaretçisi.
Dönüş Değeri
Belirtilen kimlikli grup bulunamazsa animasyon grubu veya NULL işaretçisi.
Açıklamalar
Çalışma zamanında bir animasyon grubu bulmak için bu yöntemi kullanın. Animasyon denetleyicisine belirli bir GroupID'ye sahip ilk animasyon nesnesi eklendiğinde bir grup oluşturulur ve animasyon gruplarının iç listesine eklenir.
CAnimationController::FindAnimationObject
Belirtilen animasyon değişkenlerini içeren animasyon nesnesini bulur.
BOOL FindAnimationObject(
IUIAnimationVariable* pVariable,
CAnimationBaseObject** ppObject,
CAnimationGroup** ppGroup);
Parametreler
pVariable
Animasyon değişkeni işaretçisi.
ppObject
Çıktı. Animasyon nesnesi veya NULL işaretçisi içerir.
ppGroup
Çıktı. Animasyon nesnesini veya NULL değerini tutan animasyon grubuna yönelik bir işaretçi içerir.
Dönüş Değeri
Nesne bulunduysa TRUE; aksi takdirde YANLIŞ.
Açıklamalar
Gelen animasyon değişkeninden bir animasyon nesnesi bulmak gerektiğinde olay işleyicilerinden çağrılır.
CAnimationController::gkeyframeStoryboardStart
Görsel taslak başlangıcını temsil eden bir ana kare.
static CBaseKeyFrame gkeyframeStoryboardStart;
CAnimationController::GetKeyframeStoryboardStart
Görsel taslak başlangıcını tanımlayan bir ana kare döndürür.
static CBaseKeyFrame* GetKeyframeStoryboardStart();
Dönüş Değeri
Görsel taslak başlangıcını tanımlayan temel ana kare işaretçisi.
Açıklamalar
Diğer tüm ana kareleri veya geçişleri film şeridinin başladığı zamana dayandırmak için bu ana kareyi edinin.
CAnimationController::GetUIAnimationManager
Kapsüllenmiş IUIAnimationManager nesnesine erişim sağlar.
IUIAnimationManager* GetUIAnimationManager();
Dönüş Değeri
Animasyon yöneticisi oluşturulamadıysa IUIAnimationManager arabirimi veya NULL işaretçisi.
Açıklamalar
Geçerli işletim sistemi Windows Animasyon API'sini desteklemiyorsa, bu yöntem NULL döndürür ve bundan sonra CAnimationController::IsValid işlevi FALSE döndürür. Animasyon denetleyicisi tarafından sarmalanmayan arabirim yöntemlerini çağırmak için IUIAnimationManager'a erişmeniz gerekebilir.
CAnimationController::GetUIAnimationTimer
Kapsüllenmiş IUIAnimationTimer nesnesine erişim sağlar.
IUIAnimationTimer* GetUIAnimationTimer();
Dönüş Değeri
Animasyon zamanlayıcısı oluşturulamadıysa IUIAnimationTimer arabirimi veya NULL işaretçisi.
Açıklamalar
Geçerli işletim sistemi Windows Animasyon API'sini desteklemiyorsa, bu yöntem NULL döndürür ve bundan sonra CAnimationController::IsValid işlevi FALSE döndürür.
CAnimationController::GetUITransitionFactory
Geçiş kitaplığı oluşturulamadıysa IUIAnimationTransitionFactory arabirimi veya NULL işaretçisi.
IUIAnimationTransitionFactory* GetUITransitionFactory();
Dönüş Değeri
Geçiş fabrikası oluşturulamadıysa IUIAnimationTransitionFactory veya NULL işaretçisi.
Açıklamalar
Geçerli işletim sistemi Windows Animasyon API'sini desteklemiyorsa, bu yöntem NULL döndürür ve bundan sonra CAnimationController::IsValid işlevi FALSE döndürür.
CAnimationController::GetUITransitionLibrary
Kapsüllenmiş IUIAnimationTransitionLibrary nesnesine erişim sağlar.
IUIAnimationTransitionLibrary* GetUITransitionLibrary();
Dönüş Değeri
Geçiş kitaplığı oluşturulamadıysa IUIAnimationTransitionLibrary arabirimi veya NULL işaretçisi.
Açıklamalar
Geçerli işletim sistemi Windows Animasyon API'sini desteklemiyorsa, bu yöntem NULL döndürür ve bundan sonra CAnimationController::IsValid işlevi FALSE döndürür.
CAnimationController::IsAnimationInProgress
En az bir grubun animasyon oynatıp oynatmadığını bildirir.
virtual BOOL IsAnimationInProgress();
Dönüş Değeri
Bu animasyon denetleyicisi için devam eden bir animasyon varsa TRUE; aksi takdirde YANLIŞ.
Açıklamalar
Animasyon yöneticisinin durumunu denetler ve durum UI_ANIMATION_MANAGER_BUSY ise TRUE döndürür.
CAnimationController::IsValid
Animasyon denetleyicisinin geçerli olup olmadığını bildirir.
BOOL IsValid() const;
Dönüş Değeri
Animasyon denetleyicisi geçerliyse TRUE; aksi takdirde YANLIŞ.
Açıklamalar
Bu yöntem yalnızca geçerli işletim sisteminde Windows Animasyon API'sinin desteklenmemesi ve animasyon yöneticisinin oluşturulmasının kaydedilmediği için başarısız olması durumunda YANLIŞ döndürür. Bu bayrağın ayarlanmasına neden olmak için COM kitaplıklarının başlatılmasından sonra en az bir kez GetUIAnimationManager'ı çağırmanız gerekir.
CAnimationController::m_bIsValid
Animasyon denetleyicisinin geçerli olup olmadığını belirtir. Geçerli işletim sistemi Windows Animasyon API'sini desteklemiyorsa bu üye FALSE olarak ayarlanır.
BOOL m_bIsValid;
CAnimationController::m_lstAnimationGroups
Bu animasyon denetleyicisine ait animasyon gruplarının listesi.
CList<CAnimationGroup*, CAnimationGroup*> m_lstAnimationGroups;
CAnimationController::m_pAnimationManager
Animasyon Yöneticisi COM nesnesinin işaretçisini depolar.
ATL::CComPtr<IUIAnimationManager> m_pAnimationManager;
CAnimationController::m_pAnimationTimer
Animasyon Zamanlayıcı COM nesnesinin işaretçisini depolar.
ATL::CComPtr<IUIAnimationTimer> m_pAnimationTimer;
CAnimationController::m_pRelatedWnd
animasyon yöneticisinin durumu değiştiğinde veya güncelleştirme sonrası olayı oluştuğunda otomatik olarak yeniden çizilebilen ilgili bir CWnd nesnesine yönelik bir işaretçi. NULL olabilir.
CWnd* m_pRelatedWnd;
CAnimationController::m_pTransitionFactory
Transition Factory COM nesnesine yönelik bir işaretçi depolar.
ATL::CComPtr<IUIAnimationTransitionFactory> m_pTransitionFactory;
CAnimationController::m_pTransitionLibrary
Geçiş Kitaplığı COM nesnesinin işaretçisini depolar.
ATL::CComPtr<IUIAnimationTransitionLibrary> m_pTransitionLibrary;
CAnimationController::OnAfterSchedule
Belirtilen grup için bir animasyon zamanlandığında çerçeve tarafından çağrılır.
virtual void OnAfterSchedule(CAnimationGroup* pGroup);
Parametreler
pGroup
Zamanlanmış bir animasyon grubuna yönelik işaretçi.
Açıklamalar
Varsayılan uygulama, belirtilen gruptan anahtar kareleri kaldırır ve belirtilen gruba ait animasyon değişkenlerinden geçişler sağlar. Animasyon zamanlaması üzerine ek eylemler yapmak için türetilmiş bir sınıfta geçersiz kılınabilir.
CAnimationController::OnAnimationIntegerValueChanged
Animasyon değişkeninin tamsayı değeri değiştiğinde çerçeve tarafından çağrılır.
virtual void OnAnimationIntegerValueChanged(
CAnimationGroup* pGroup,
CAnimationBaseObject* pObject,
IUIAnimationVariable* variable,
INT32 newValue,
INT32 prevValue);
Parametreler
pGroup
Değeri değiştirilmiş bir animasyon nesnesini tutan bir animasyon grubu işaretçisi.
pObject
Değeri değiştirilmiş bir animasyon değişkeni içeren bir animasyon nesnesi işaretçisi.
değişken
Animasyon değişkeni işaretçisi.
newValue
Yeni değeri belirtir.
prevValue
Önceki değeri belirtir.
Açıklamalar
Bu yöntem, belirli bir animasyon değişkeni veya animasyon nesnesi için enableIntegerValueChangedEvent ile animasyon değişkeni olaylarını etkinleştirirseniz çağrılır. Uygulamaya özgü eylemler yapmak için türetilmiş bir sınıfta geçersiz kılınabilir.
CAnimationController::OnAnimationManagerStatusChanged
Animasyon yöneticisinden StatusChanged olayına yanıt olarak çerçeve tarafından çağrılır.
virtual void OnAnimationManagerStatusChanged(
UI_ANIMATION_MANAGER_STATUS newStatus,
UI_ANIMATION_MANAGER_STATUS previousStatus);
Parametreler
newStatus
Yeni animasyon yöneticisi durumu.
previousStatus
Önceki animasyon yöneticisi durumu.
Açıklamalar
Bu yöntem, EnableAnimationManagerEvent ile animasyon yöneticisi olaylarını etkinleştirirseniz çağrılır. Uygulamaya özgü eylemler yapmak için türetilmiş bir sınıfta geçersiz kılınabilir. Varsayılan uygulama, SetRelatedWnd ile ayarlanmışsa ilgili bir pencereyi güncelleştirir.
CAnimationController::OnAnimationTimerPostUpdate
Animasyon güncelleştirmesi tamamlandıktan sonra çerçeve tarafından çağrılır.
virtual void OnAnimationTimerPostUpdate();
Açıklamalar
EnableAnimationTimerEventHandler kullanarak zamanlayıcı olay işleyicilerini etkinleştirirseniz bu yöntem çağrılır. Uygulamaya özgü eylemler yapmak için türetilmiş bir sınıfta geçersiz kılınabilir.
CAnimationController::OnAnimationTimerPreUpdate
Animasyon güncelleştirmesi başlamadan önce çerçeve tarafından çağrılır.
virtual void OnAnimationTimerPreUpdate();
Açıklamalar
EnableAnimationTimerEventHandler kullanarak zamanlayıcı olay işleyicilerini etkinleştirirseniz bu yöntem çağrılır. Uygulamaya özgü eylemler yapmak için türetilmiş bir sınıfta geçersiz kılınabilir.
CAnimationController::OnAnimationTimerRenderingTooSlow
Animasyon için işleme kare hızı istenen en düşük kare hızının altına düştüğünde çerçeve tarafından çağrılır.
virtual void OnAnimationTimerRenderingTooSlow(UINT32 fps);
Parametreler
Fps
Saniyedeki kare cinsinden geçerli kare hızı.
Açıklamalar
EnableAnimationTimerEventHandler kullanarak zamanlayıcı olay işleyicilerini etkinleştirirseniz bu yöntem çağrılır. Uygulamaya özgü eylemler yapmak için türetilmiş bir sınıfta geçersiz kılınabilir. İstenen en düşük kare hızı, IUIAnimationTimer::SetFrameRateThreshold çağrılarak belirtilir.
CAnimationController::OnAnimationValueChanged
Animasyon değişkeninin değeri değiştiğinde çerçeve tarafından çağrılır.
virtual void OnAnimationValueChanged(
CAnimationGroup* pGroup,
CAnimationBaseObject* pObject,
IUIAnimationVariable* variable,
DOUBLE newValue,
DOUBLE prevValue);
Parametreler
pGroup
Değeri değiştirilmiş bir animasyon nesnesini tutan bir animasyon grubu işaretçisi.
pObject
Değeri değiştirilmiş bir animasyon değişkeni içeren bir animasyon nesnesi işaretçisi.
değişken
Animasyon değişkeni işaretçisi.
newValue
Yeni değeri belirtir.
prevValue
Önceki değeri belirtir.
Açıklamalar
Bu yöntem, belirli bir animasyon değişkeni veya animasyon nesnesi için enableValueChangedEvent ile animasyon değişkeni olaylarını etkinleştirirseniz çağrılır. Uygulamaya özgü eylemler yapmak için türetilmiş bir sınıfta geçersiz kılınabilir.
CAnimationController::OnBeforeAnimationStart
Animasyon zamanlanmasından hemen önce çerçeve tarafından çağrılır.
virtual void OnBeforeAnimationStart(CAnimationGroup* pGroup);
Parametreler
pGroup
Animasyonu başlamak üzere olan bir animasyon grubunun işaretçisi.
Açıklamalar
Bu çağrı ilgili CWnd'a yönlendirilir ve belirtilen grup için animasyon başlamadan önce ek eylemler gerçekleştirmek üzere türetilmiş bir sınıfta geçersiz kılınabilir.
CAnimationController::OnHasPriorityCancel
Zamanlama çakışmalarını çözmek için çerçeve tarafından çağrılır.
virtual BOOL OnHasPriorityCancel(
CAnimationGroup* pGroupScheduled,
CAnimationGroup* pGroupNew,
UI_ANIMATION_PRIORITY_EFFECT priorityEffect);
Parametreler
pGroupScheduled
Şu anda zamanlanmış görsel taslak sahibi olan grup.
pGroupNew
Zamanlamada olan yeni görsel taslak sahibi olan grup, pGroupScheduled'in sahip olduğu zamanlanmış görsel taslakla çakışıyor.
priorityEffect
pGroupScheduled daha yüksek önceliğe sahipse pGroupNew üzerindeki olası etki.
Dönüş Değeri
pGroupNew'e ait görsel taslak önceliğe sahipse TRUE döndürmelidir. pGroupScheduled'e ait görsel taslak önceliğe sahipse FALSE döndürmelidir.
Açıklamalar
CAnimationController::EnablePriorityComparisonHandler kullanarak öncelik karşılaştırma olaylarını etkinleştirir ve UI_ANIMATION_PHT_CANCEL belirtirseniz bu yöntem çağrılır. Uygulamaya özgü eylemler yapmak için türetilmiş bir sınıfta geçersiz kılınabilir. Çakışma Yönetimi hakkında daha fazla bilgi için Windows Animasyon API'si belgelerini okuyun.
CAnimationController::OnHasPriorityCompress
Zamanlama çakışmalarını çözmek için çerçeve tarafından çağrılır.
virtual BOOL OnHasPriorityCompress(
CAnimationGroup* pGroupScheduled,
CAnimationGroup* pGroupNew,
UI_ANIMATION_PRIORITY_EFFECT priorityEffect);
Parametreler
pGroupScheduled
Şu anda zamanlanmış görsel taslak sahibi olan grup.
pGroupNew
Zamanlamada olan yeni görsel taslak sahibi olan grup, pGroupScheduled'in sahip olduğu zamanlanmış görsel taslakla çakışıyor.
priorityEffect
pGroupScheduled daha yüksek önceliğe sahipse pGroupNew üzerindeki olası etki.
Dönüş Değeri
pGroupNew'e ait görsel taslak önceliğe sahipse TRUE döndürmelidir. pGroupScheduled'e ait görsel taslak önceliğe sahipse FALSE döndürmelidir.
Açıklamalar
CAnimationController::EnablePriorityComparisonHandler kullanarak öncelik karşılaştırma olaylarını etkinleştirir ve UI_ANIMATION_PHT_COMPRESS belirtirseniz bu yöntem çağrılır. Uygulamaya özgü eylemler yapmak için türetilmiş bir sınıfta geçersiz kılınabilir. Çakışma Yönetimi hakkında daha fazla bilgi için Windows Animasyon API'si belgelerini okuyun.
CAnimationController::OnHasPriorityConclude
Zamanlama çakışmalarını çözmek için çerçeve tarafından çağrılır.
virtual BOOL OnHasPriorityConclude(
CAnimationGroup* pGroupScheduled,
CAnimationGroup* pGroupNew,
UI_ANIMATION_PRIORITY_EFFECT priorityEffect);
Parametreler
pGroupScheduled
Şu anda zamanlanmış görsel taslak sahibi olan grup.
pGroupNew
Zamanlamada olan yeni görsel taslak sahibi olan grup, pGroupScheduled'in sahip olduğu zamanlanmış görsel taslakla çakışıyor.
priorityEffect
pGroupScheduled daha yüksek önceliğe sahipse pGroupNew üzerindeki olası etki.
Dönüş Değeri
pGroupNew'e ait görsel taslak önceliğe sahipse TRUE döndürmelidir. pGroupScheduled'e ait görsel taslak önceliğe sahipse FALSE döndürmelidir.
Açıklamalar
CAnimationController::EnablePriorityComparisonHandler kullanarak öncelik karşılaştırma olaylarını etkinleştirir ve UI_ANIMATION_PHT_CONCLUDE belirtirseniz bu yöntem çağrılır. Uygulamaya özgü eylemler yapmak için türetilmiş bir sınıfta geçersiz kılınabilir. Çakışma Yönetimi hakkında daha fazla bilgi için Windows Animasyon API'si belgelerini okuyun.
CAnimationController::OnHasPriorityTrim
Zamanlama çakışmalarını çözmek için çerçeve tarafından çağrılır.
virtual BOOL OnHasPriorityTrim(
CAnimationGroup* pGroupScheduled,
CAnimationGroup* pGroupNew,
UI_ANIMATION_PRIORITY_EFFECT priorityEffect);
Parametreler
pGroupScheduled
Şu anda zamanlanmış görsel taslak sahibi olan grup.
pGroupNew
Zamanlamada olan yeni görsel taslak sahibi olan grup, pGroupScheduled'in sahip olduğu zamanlanmış görsel taslakla çakışıyor.
priorityEffect
pGroupScheduled daha yüksek önceliğe sahipse pGroupNew üzerindeki olası etki.
Dönüş Değeri
pGroupNew'e ait görsel taslak önceliğe sahipse TRUE döndürmelidir. pGroupScheduled'e ait görsel taslak önceliğe sahipse FALSE döndürmelidir.
Açıklamalar
CAnimationController::EnablePriorityComparisonHandler kullanarak öncelik karşılaştırma olaylarını etkinleştirir ve UI_ANIMATION_PHT_TRIM belirtirseniz bu yöntem çağrılır. Uygulamaya özgü eylemler yapmak için türetilmiş bir sınıfta geçersiz kılınabilir. Çakışma Yönetimi hakkında daha fazla bilgi için Windows Animasyon API'si belgelerini okuyun.
CAnimationController::OnStoryboardStatusChanged
Görsel taslak durumu değiştiğinde çerçeve tarafından çağrılır.
virtual void OnStoryboardStatusChanged(
CAnimationGroup* pGroup,
UI_ANIMATION_STORYBOARD_STATUS newStatus,
UI_ANIMATION_STORYBOARD_STATUS previousStatus);
Parametreler
pGroup
Durumu değiştirilmiş görsel taslak sahibi olan bir animasyon grubuna yönelik işaretçi.
newStatus
Yeni durumu belirtir.
previousStatus
Önceki durumu belirtir.
Açıklamalar
Bu yöntem, CAnimationController::EnableStoryboardEventHandler kullanarak görsel taslak olaylarını etkinleştirirseniz çağrılır. Uygulamaya özgü eylemler yapmak için türetilmiş bir sınıfta geçersiz kılınabilir.
CAnimationController::OnStoryboardUpdated
Görsel taslak güncelleştirildiğinde çerçeve tarafından çağrılır.
virtual void OnStoryboardUpdated(CAnimationGroup* pGroup);
Parametreler
pGroup
Görsel taslak sahibi olan bir grubun işaretçisi.
Açıklamalar
Bu yöntem, CAnimationController::EnableStoryboardEventHandler kullanarak görsel taslak olaylarını etkinleştirirseniz çağrılır. Uygulamaya özgü eylemler yapmak için türetilmiş bir sınıfta geçersiz kılınabilir.
CAnimationController::RemoveAllAnimationGroups
Tüm animasyon gruplarını animasyon denetleyicisinden kaldırır.
void RemoveAllAnimationGroups();
Açıklamalar
Tüm gruplar silinir, uygulama düzeyinde depolanırsa işaretçileri geçersiz kılınmalıdır. Silinen bir grup için CAnimationGroup::m_bAutodestroyAnimationObjects TRUE ise, o gruba ait tüm animasyon nesneleri silinir; aksi takdirde üst animasyon denetleyicisine başvuruları NULL olarak ayarlanır ve başka bir denetleyiciye eklenebilir.
CAnimationController::RemoveAnimationGroup
Belirtilen kimlikli animasyon grubunu animasyon denetleyicisinden kaldırır.
void RemoveAnimationGroup(UINT32 nGroupID);
Parametreler
nGroupID
Animasyon grubu kimliğini belirtir.
Açıklamalar
Bu yöntem, bir animasyon grubunu iç grup listesinden kaldırır ve siler, bu nedenle bu animasyon grubuna bir işaretçi depoladıysanız, bu grubun geçersiz kılınması gerekir. CAnimationGroup::m_bAutodestroyAnimationObjects TRUE ise, o gruba ait tüm animasyon nesneleri silinir; aksi takdirde üst animasyon denetleyicisine başvuruları NULL olarak ayarlanır ve başka bir denetleyiciye eklenebilir.
CAnimationController::RemoveAnimationObject
Animasyon denetleyicisinden animasyon nesnesi kaldırma.
void RemoveAnimationObject(
CAnimationBaseObject* pObject,
BOOL bNoDelete = FALSE);
Parametreler
pObject
Animasyon nesnesinin işaretçisi.
bNoDelete
Bu parametre TRUE ise, nesne kaldırdıktan sonra silinmez.
Açıklamalar
Animasyon denetleyicisinden ve animasyon grubundan animasyon nesnesini kaldırır. Belirli bir nesnenin artık animasyonlu olmaması gerekiyorsa veya nesneyi başka bir animasyon denetleyicisine taşımanız gerekiyorsa bu işlevi çağırın. Son durumda bNoDelete TRUE olmalıdır.
CAnimationController::RemoveTransitions
Belirtilen gruba ait animasyon nesnelerinden geçişleri kaldırır.
void RemoveTransitions(UINT32 nGroupID);
Parametreler
nGroupID
Grup Kimliğini belirtir.
Açıklamalar
Grup, animasyon nesneleri üzerinde döngüler oluşturur ve her animasyon nesnesi için ClearTransitions(FALSE) öğesini çağırır. Bu yöntem, animasyon zamanlandıktan sonra çerçeve tarafından çağrılır.
CAnimationController::ScheduleGroup
Animasyon zamanlar.
BOOL ScheduleGroup(
UINT32 nGroupID,
UI_ANIMATION_SECONDS time = 0.0);
Parametreler
nGroupID
Zamanlanması gereken animasyon Grup Kimliğini belirtir.
Saat
Zamanlanması gereken zamanı belirtir.
Dönüş Değeri
Animasyon başarıyla zamanlandıysa TRUE. Görsel taslak oluşturulmadıysa VEYA başka bir hata oluşursa YANLIŞ.
Açıklamalar
AnimateGroup'u çağırmanız ve bScheduleNow parametresinin ScheduleGroup öncesinde FALSE olarak ayarlanması gerekir. IUIAnimationTimer::GetTime'dan istenen animasyon süresini belirtebilirsiniz. Time parametresi 0,0 ise animasyon geçerli saat için zamanlanır.
CAnimationController::SetRelatedWnd
Animasyon denetleyicisi ile pencere arasında bir ilişki kurar.
void SetRelatedWnd(CWnd* pWnd);
Parametreler
pWnd
Ayarlanacağı pencere nesnesi işaretçisi.
Açıklamalar
İlgili bir CWnd nesnesi ayarlanırsa, animasyon yöneticisinin durumu değiştiğinde veya güncelleştirme sonrası olay gerçekleştiğinde animasyon denetleyicisi bunu otomatik olarak güncelleştirebilir (WM_PAINT ileti gönder).
CAnimationController::UpdateAnimationManager
Animasyon yöneticisini tüm animasyon değişkenlerinin değerlerini güncelleştirmeye yönlendirir.
virtual void UpdateAnimationManager();
Açıklamalar
Bu yöntemi çağırmak, animasyon yöneticisini geçerli saate ilerleterek görsel taslakların durumlarını gerektiği gibi değiştirir ve animasyon değişkenlerini uygun ilişkilendirme değerlerine güncelleştirir. Bu yöntem dahili olarak IUIAnimationTimer::GetTime(timeNow) ve IUIAnimationManager::Update(timeNow) çağrılarını çağırır. Bu davranışı özelleştirmek için türetilmiş bir sınıfta bu yöntemi geçersiz kılın.