Kelas CAnimationGroup
Mengimplementasikan grup animasi, yang menggabungkan papan cerita animasi, objek animasi, dan transisi untuk menentukan animasi.
Sintaks
class CAnimationGroup;
Anggota
Konstruktor Publik
Nama | Deskripsi |
---|---|
CAnimationGroup::CAnimationGroup | Membuat grup animasi. |
CAnimationGroup::~CAnimationGroup | Destruktor. Dipanggil ketika grup animasi sedang dihancurkan. |
Metode Publik
Nama | Deskripsi |
---|---|
CAnimationGroup::Animasikan | Menganimasikan grup. |
CAnimationGroup::ApplyTransitions | Menerapkan transisi ke objek animasi. |
CAnimationGroup::FindAnimationObject | Menemukan objek animasi yang berisi variabel animasi yang ditentukan. |
CAnimationGroup::GetGroupID | Mengembalikan GroupID. |
CAnimationGroup::RemoveKeyframes | Menghapus dan secara opsional menghancurkan semua keyframe yang termasuk dalam grup animasi. |
CAnimationGroup::RemoveTransitions | Menghapus transisi dari objek animasi yang termasuk dalam grup animasi. |
CAnimationGroup::Schedule | Menjadwalkan animasi pada waktu yang ditentukan. |
CAnimationGroup::SetAutodestroyTransitions | Mengarahkan semua objek animasi yang termasuk dalam grup secara otomatis menghancurkan transisi. |
Metode yang Dilindungi
Nama | Deskripsi |
---|---|
CAnimationGroup::AddKeyframes | Pembantu yang menambahkan keyframe ke papan cerita. |
CAnimationGroup::AddTransitions | Pembantu yang menambahkan transisi ke papan cerita. |
CAnimationGroup::CreateTransitions | Pembantu yang membuat objek transisi COM. |
Anggota Data Publik
Nama | Deskripsi |
---|---|
CAnimationGroup::m_bAutoclearTransitions | Menentukan cara menghapus transisi dari objek animasi yang termasuk dalam grup. Jika anggota ini TRUE, transisi dihapus secara otomatis ketika animasi telah dijadwalkan. Jika tidak, Anda perlu menghapus transisi secara manual. |
CAnimationGroup::m_bAutodestroyAnimationObjects | Menentukan cara menghancurkan objek animasi. Jika parameter ini TRUE, objek animasi akan dihancurkan secara otomatis ketika grup dihancurkan. Jika tidak, objek animasi harus dihancurkan secara manual. Nilai defaultnya adalah FALSE. Atur nilai ini ke TRUE hanya jika semua objek animasi yang termasuk dalam grup dialokasikan secara dinamis dengan operator baru. |
CAnimationGroup::m_bAutodestroyKeyframes | Menentukan cara menghancurkan keyframe. Jika nilai ini TRUE, semua keyframe dihapus dan dihancurkan; jika tidak, mereka hanya dihapus dari daftar. Nilai defaultnya adalah TRUE. |
CAnimationGroup::m_lstAnimationObjects | Berisi daftar objek animasi. |
CAnimationGroup::m_lstKeyFrames | Berisi daftar keyframe. |
CAnimationGroup::m_pStoryboard | Menunjuk ke papan cerita animasi. Penunjuk ini hanya valid setelah panggilan pada Animasikan. |
Anggota Data yang Dilindungi
Nama | Deskripsi |
---|---|
CAnimationGroup::m_nGroupID | Pengidentifikasi unik grup animasi. |
CAnimationGroup::m_pParentController | Penunjuk ke pengontrol animasi tempat grup ini berada. |
Keterangan
Grup animasi dibuat secara otomatis oleh pengontrol animasi (CAnimationController) saat Anda menambahkan objek animasi menggunakan CAnimationController::AddAnimationObject. Grup animasi diidentifikasi oleh GroupID, yang biasanya diambil sebagai parameter untuk memanipulasi grup animasi. GroupID diambil dari objek animasi pertama yang ditambahkan ke grup animasi baru. Papan cerita animasi yang dienkapsulasi dibuat setelah Anda memanggil CAnimationController::AnimateGroup dan dapat diakses melalui anggota publik m_pStoryboard.
Hierarki Warisan
CAnimationGroup
Persyaratan
Header: afxanimationcontroller.h
CAnimationGroup::~CAnimationGroup
Destruktor. Dipanggil ketika grup animasi sedang dihancurkan.
~CAnimationGroup();
CAnimationGroup::AddKeyframes
Pembantu yang menambahkan keyframe ke papan cerita.
void AddKeyframes(IUIAnimationStoryboard* pStoryboard, BOOL bAddDeep);
Parameter
pStoryboard
Penunjuk ke objek COM papan cerita.
bAddDeep
Menentukan apakah metode ini harus ditambahkan ke keyframe papan cerita yang bergantung pada keyframe lain.
CAnimationGroup::AddTransitions
Pembantu yang menambahkan transisi ke papan cerita.
void AddTransitions(
IUIAnimationStoryboard* pStoryboard,
BOOL bDependOnKeyframes);
Parameter
pStoryboard
Penunjuk ke objek COM papan cerita.
bDependOnKeyframes
CAnimationGroup::Animasikan
Menganimasikan grup.
BOOL Animate(
IUIAnimationManager* pManager,
IUIAnimationTimer* pTimer,
BOOL bScheduleNow);
Parameter
pManager
pTimerbScheduleNow
Tampilkan Nilai
TRUE jika metode berhasil; jika tidak FALSE.
Keterangan
Metode ini membuat papan cerita internal, membuat dan menerapkan transisi dan menjadwalkan animasi jika bScheduleNow TRUE. Jika bScheduleNow FALSE, Anda perlu memanggil Jadwal untuk memulai animasi pada waktu yang ditentukan.
CAnimationGroup::ApplyTransitions
Menerapkan transisi ke objek animasi.
void ApplyTransitions();
Keterangan
Metode ini MENEGASKAN dalam mode debug jika papan cerita belum dibuat. Ini membuat semua transisi terlebih dahulu, lalu menambahkan keyframe "statis" (keyframe yang bergantung pada offset), menambahkan transisi yang tidak bergantung pada keyframe, menambahkan keyframe tergantung pada transisi dan keyframe lainnya, dan pada akhirnya menambahkan transisi yang bergantung pada keyframe.
CAnimationGroup::CAnimationGroup
Membuat grup animasi.
CAnimationGroup(CAnimationController* pParentController, UINT32 nGroupID);
Parameter
pParentController
Penunjuk ke pengontrol animasi yang membuat grup.
nGroupID
Menentukan GroupID.
CAnimationGroup::CreateTransitions
Pembantu yang membuat objek transisi COM.
BOOL CreateTransitions();
Tampilkan Nilai
TRUE adalah metode berhasil, jika tidak FALSE.
CAnimationGroup::FindAnimationObject
Menemukan objek animasi yang berisi variabel animasi yang ditentukan.
CAnimationBaseObject* FindAnimationObject(IUIAnimationVariable* pVariable);
Parameter
pVariable
Penunjuk ke variabel animasi.
Tampilkan Nilai
Penunjuk ke objek animasi, atau NULL jika objek animasi tidak ditemukan.
CAnimationGroup::GetGroupID
Mengembalikan GroupID.
UINT32 GetGroupID() const;
Tampilkan Nilai
Pengidentifikasi grup.
CAnimationGroup::m_bAutoclearTransitions
Menentukan cara menghapus transisi dari objek animasi yang termasuk dalam grup. Jika anggota ini TRUE, transisi dihapus secara otomatis ketika animasi telah dijadwalkan. Jika tidak, Anda perlu menghapus transisi secara manual.
BOOL m_bAutoclearTransitions;
CAnimationGroup::m_bAutodestroyAnimationObjects
Menentukan cara menghancurkan objek animasi. Jika parameter ini TRUE, objek animasi akan dihancurkan secara otomatis ketika grup dihancurkan. Jika tidak, objek animasi harus dihancurkan secara manual. Nilai defaultnya adalah FALSE. Atur nilai ini ke TRUE hanya jika semua objek animasi yang termasuk dalam grup dialokasikan secara dinamis dengan operator baru.
BOOL m_bAutodestroyAnimationObjects;
CAnimationGroup::m_bAutodestroyKeyframes
Menentukan cara menghancurkan keyframe. Jika nilai ini TRUE, semua keyframe dihapus dan dihancurkan; jika tidak, mereka hanya dihapus dari daftar. Nilai defaultnya adalah TRUE.
BOOL m_bAutodestroyKeyframes;
CAnimationGroup::m_lstAnimationObjects
Berisi daftar objek animasi.
CObList m_lstAnimationObjects;
CAnimationGroup::m_lstKeyFrames
Berisi daftar keyframe.
CObList m_lstKeyFrames;
CAnimationGroup::m_nGroupID
Pengidentifikasi unik grup animasi.
UINT32 m_nGroupID;
CAnimationGroup::m_pParentController
Penunjuk ke pengontrol animasi tempat grup ini berada.
CAnimationController* m_pParentController;
CAnimationGroup::m_pStoryboard
Menunjuk ke papan cerita animasi. Penunjuk ini hanya valid setelah panggilan pada Animasikan.
ATL::CComPtr<IUIAnimationStoryboard> m_pStoryboard;
CAnimationGroup::RemoveKeyframes
Menghapus dan secara opsional menghancurkan semua keyframe yang termasuk dalam grup animasi.
void RemoveKeyframes();
Keterangan
Jika anggota m_bAutodestroyKeyframes TRUE, maka keyframe dihapus dan dihancurkan, jika tidak, keyframe baru saja dihapus dari daftar internal keyframe.
CAnimationGroup::RemoveTransitions
Menghapus transisi dari objek animasi yang termasuk dalam grup animasi.
void RemoveTransitions();
Keterangan
Jika bendera m_bAutoclearTransitions diatur ke TRUE, metode ini akan mengulangi semua objek animasi yang termasuk dalam grup dan memanggil CAnimationObject::ClearTransitions(FALSE).
CAnimationGroup::Schedule
Menjadwalkan animasi pada waktu yang ditentukan.
BOOL Schedule(IUIAnimationTimer* pTimer, UI_ANIMATION_SECONDS time);
Parameter
pTimer
Penunjuk ke timer animasi.
time
Menentukan waktu untuk menjadwalkan animasi.
Tampilkan Nilai
TRUE jika metode berhasil; FALSE jika metode gagal atau jika Animate belum dipanggil dengan bScheduleNow diatur ke FALSE.
Keterangan
Panggil fungsi ini untuk menjadwalkan animasi pada waktu yang ditentukan. Anda harus memanggil Animate dengan bScheduleNow diatur ke FALSE terlebih dahulu.
CAnimationGroup::SetAutodestroyTransitions
Mengarahkan semua objek animasi yang termasuk dalam grup secara otomatis menghancurkan transisi.
void SetAutodestroyTransitions(BOOL bAutoDestroy = TRUE);
Parameter
bAutoDestroy
Menentukan cara menghancurkan transisi.
Keterangan
Atur nilai ini ke FALSE hanya jika Anda mengalokasikan transisi pada tumpukan. Nilai defaultnya adalah TRUE, oleh karena itu sangat disarankan untuk mengalokasikan objek transisi menggunakan operator baru.