Aracılığıyla paylaş


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

CObject

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.

Ayrıca bkz.

Sınıflar