Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Kelas dasar untuk semua objek animasi.
Sintaks
class CAnimationBaseObject : public CObject;
Anggota
Konstruktor Publik
| Nama | Deskripsi |
|---|---|
| CAnimationBaseObject::CAnimationBaseObject | Kelebihan beban. Membuat objek animasi. |
| CAnimationBaseObject::~CAnimationBaseObject | Destruktor. Dipanggil ketika objek animasi sedang dihancurkan. |
Metode Publik
| Nama | Deskripsi |
|---|---|
| CAnimationBaseObject::ApplyTransitions | Menambahkan transisi ke papan cerita dengan variabel animasi yang dienkapsulasi. |
| CAnimationBaseObject::ClearTransitions | Menghapus semua transisi terkait. |
| CAnimationBaseObject::ContainsVariable | Menentukan apakah objek animasi berisi variabel animasi tertentu. |
| CAnimationBaseObject::CreateTransitions | Membuat transisi yang terkait dengan objek animasi. |
| CAnimationBaseObject::D etachFromController | Mencopot objek animasi dari pengontrol animasi induk. |
| CAnimationBaseObject::EnableIntegerValueChangedEvent | Menyiapkan penanganan aktivitas Nilai Bilangan Bulat yang Diubah. |
| CAnimationBaseObject::EnableValueChangedEvent | Menyiapkan penanganan aktivitas Nilai yang Diubah. |
| CAnimationBaseObject::GetAutodestroyTransitions | Memberi tahu apakah transisi terkait dihancurkan secara otomatis. |
| CAnimationBaseObject::GetGroupID | Mengembalikan ID Grup saat ini. |
| CAnimationBaseObject::GetObjectID | Mengembalikan ID Objek saat ini. |
| CAnimationBaseObject::GetUserData | Mengembalikan data yang ditentukan pengguna. |
| CAnimationBaseObject::SetAutodestroyTransitions | Mengatur bendera untuk menghancurkan transisi secara otomatis. |
| CAnimationBaseObject::SetID | Mengatur ID baru. |
| CAnimationBaseObject::SetUserData | Mengatur data yang ditentukan pengguna. |
Metode yang Dilindungi
| Nama | Deskripsi |
|---|---|
| CAnimationBaseObject::GetAnimationVariableList | Mengumpulkan pointer ke variabel animasi yang terkandung. |
| CAnimationBaseObject::SetParentAnimationObjects | Menetapkan hubungan antara variabel animasi, yang terkandung dalam objek animasi, dan kontainernya. |
Anggota Data yang Dilindungi
| Nama | Deskripsi |
|---|---|
| CAnimationBaseObject::m_bAutodestroyTransitions | Menentukan apakah transisi terkait harus dihancurkan secara otomatis. |
| CAnimationBaseObject::m_dwUserData | Menyimpan data yang ditentukan pengguna. |
| CAnimationBaseObject::m_nGroupID | Menentukan ID Grup objek animasi. |
| CAnimationBaseObject::m_nObjectID | Menentukan ID Objek objek animasi. |
| CAnimationBaseObject::m_pParentController | Penunjuk ke pengontrol animasi induk. |
Keterangan
Kelas ini menerapkan metode dasar untuk semua objek animasi. Objek animasi dapat mewakili nilai, titik, ukuran, persegi panjang, atau warna dalam aplikasi, serta entitas kustom apa pun. Objek animasi disimpan dalam grup animasi (lihat CAnimationGroup). Setiap grup dapat dianimasikan secara terpisah dan dapat diperlakukan sebagai analog papan cerita. Objek animasi merangkum satu atau beberapa variabel animasi (lihat CAnimationVariable), tergantung pada representasi logisnya. Misalnya, CAnimationRect berisi empat variabel animasi - satu variabel untuk setiap sisi persegi panjang. Setiap kelas objek animasi mengekspos metode AddTransition yang kelebihan beban, yang harus digunakan untuk menerapkan transisi ke variabel animasi yang dienkapsulasi. Objek animasi dapat diidentifikasi oleh ID Objek (opsional) dan menurut ID Grup. ID Grup diperlukan untuk menempatkan objek animasi ke grup yang benar, tetapi jika ID Grup tidak ditentukan, objek ditempatkan di grup default dengan ID 0. Jika Anda memanggil SetID dengan GroupID yang berbeda, objek animasi akan dipindahkan ke grup lain (grup baru dibuat jika perlu).
Hierarki Warisan
CAnimationBaseObject
Persyaratan
Header: afxanimationcontroller.h
CAnimationBaseObject::~CAnimationBaseObject
Destruktor. Dipanggil ketika objek animasi sedang dihancurkan.
virtual ~CAnimationBaseObject();
CAnimationBaseObject::ApplyTransitions
Menambahkan transisi ke papan cerita dengan variabel animasi yang dienkapsulasi.
virtual BOOL ApplyTransitions(
IUIAnimationStoryboard* pStoryboard,
BOOL bDependOnKeyframes);
Parameter
pStoryboard
Penunjuk ke papan cerita.
bDependOnKeyframes
Ketika FALSE, metode ini hanya menambahkan transisi yang tidak bergantung pada keyframe.
Tampilkan Nilai
TRUE jika transisi berhasil ditambahkan.
Keterangan
Menambahkan transisi terkait, yang telah ditambahkan dengan AddTransition (metode kelebihan beban di kelas turunan), ke papan cerita.
CAnimationBaseObject::CAnimationBaseObject
Membuat objek animasi.
CAnimationBaseObject();
CAnimationBaseObject(
UINT32 nGroupID,
UINT32 nObjectID = (UINT32)-1,
DWORD dwUserData = 0);
Parameter
nGroupID
Menentukan ID Grup.
nObjectID
Menentukan ID Objek.
dwUserData
Data yang ditentukan pengguna, yang dapat dikaitkan dengan objek animasi dan diambil nanti pada waktu proses.
Keterangan
Membuat objek animasi dan menetapkan ID Objek default (0) dan ID Grup (0).
CAnimationBaseObject::ClearTransitions
Menghapus semua transisi terkait.
virtual void ClearTransitions(BOOL bAutodestroy);
Parameter
bAutodestroy
Menentukan apakah akan menghancurkan objek transisi secara otomatis, atau hanya menghapusnya dari daftar terkait.
Keterangan
Menghapus semua transisi terkait dan menghancurkannya jika bendera bAutodestroy atau m_bAutodestroyTransitions TRUE. Transisi harus dihancurkan secara otomatis hanya jika tidak dialokasikan pada tumpukan. Jika bendera di atas FALSE, transisi baru saja dihapus dari daftar internal transisi terkait.
CAnimationBaseObject::ContainsVariable
Menentukan apakah objek animasi berisi variabel animasi tertentu.
virtual BOOL ContainsVariable(IUIAnimationVariable* pVariable);
Parameter
pVariable
Penunjuk ke variabel animasi.
Tampilkan Nilai
TRUE jika variabel animasi terkandung dalam objek animasi; jika tidak FALSE.
Keterangan
Metode ini dapat digunakan untuk menentukan apakah variabel animasi yang ditentukan oleh pVariable terkandung dalam objek animasi. Objek animasi, tergantung pada jenisnya, mungkin berisi beberapa variabel animasi. Misalnya, CAnimationColor berisi tiga variabel, satu untuk setiap komponen warna (merah, hijau, dan biru). Ketika nilai variabel animasi telah berubah, WINDOWS Animation API mengirimkan peristiwa ValueChanged atau IntegerValueChanged (jika diaktifkan), dan parameter peristiwa ini adalah pointer untuk antarmuka IUIAnimationVariable dari variabel animasi. Metode ini membantu mendapatkan penunjuk ke animasi dari penunjuk ke objek COM yang terkandung.
CAnimationBaseObject::CreateTransitions
Membuat transisi yang terkait dengan objek animasi.
BOOL CreateTransitions();
Tampilkan Nilai
TRUE jika transisi berhasil dibuat; jika tidak FALSE.
Keterangan
Perulangan atas daftar variabel animasi yang dienkapsulasi dalam objek animasi turunan dan membuat transisi yang terkait dengan setiap variabel animasi.
CAnimationBaseObject::D etachFromController
Mencopot objek animasi dari pengontrol animasi induk.
void DetachFromController();
Keterangan
Metode ini digunakan secara internal.
CAnimationBaseObject::EnableIntegerValueChangedEvent
Menyiapkan penanganan aktivitas Nilai Bilangan Bulat yang Diubah.
virtual void EnableIntegerValueChangedEvent(
CAnimationController* pController,
BOOL bEnable);
Parameter
pController
Penunjuk ke pengontrol induk.
bEnable
Menentukan apakah akan mengaktifkan, atau menonaktifkan peristiwa Nilai Bilangan Bulat Diubah.
Keterangan
Jika penanganan aktivitas Nilai Bilangan Bulat Diubah diaktifkan, Anda dapat menangani peristiwa ini di metode CAnimationController::OnAnimationIntegerValueChanged, yang harus ditimpa di kelas turunan CAnimationController. Metode ini dipanggil setiap kali nilai bilangan bulat animasi telah berubah.
CAnimationBaseObject::EnableValueChangedEvent
Menyiapkan penanganan aktivitas Nilai yang Diubah.
virtual void EnableValueChangedEvent(
CAnimationController* pController,
BOOL bEnable);
Parameter
pController
Penunjuk ke pengontrol induk.
bEnable
Menentukan apakah akan mengaktifkan, atau menonaktifkan peristiwa Nilai Diubah.
Keterangan
Jika penanganan aktivitas Nilai diubah diaktifkan, Anda dapat menangani peristiwa ini di metode CAnimationController::OnAnimationValueChanged, yang harus ditimpa dalam kelas turunan CAnimationController. Metode ini dipanggil setiap kali nilai animasi telah berubah.
CAnimationBaseObject::GetAnimationVariableList
Mengumpulkan pointer ke variabel animasi yang terkandung.
virtual void GetAnimationVariableList(
CList<CAnimationVariable*,
CAnimationVariable*>& list) = 0;
Parameter
daftar
Daftar yang harus diisi dengan variabel animasi yang terkandung dalam objek animasi.
Keterangan
Metode virtual murni ini harus ditimpa dalam kelas turunan. Objek animasi, tergantung pada jenisnya, berisi satu atau beberapa variabel animasi. Misalnya, CAnimationPoint berisi dua variabel, untuk koordinat X dan Y masing-masing. Kelas dasar CAnimationBaseObject mengimplementasikan beberapa metode generik, yang bertindak pada daftar variabel animasi: ApplyTransitions, ClearTransitions, EnableValueChangedEvent, EnableIntegerValueChangedEvent. Metode ini memanggil GetAnimationVariableList, yang diisi dalam kelas turunan dengan variabel animasi aktual yang terkandung dalam objek animasi tertentu, lalu mengulang daftar dan melakukan tindakan yang diperlukan. Jika Anda membuat objek animasi kustom, Anda harus menambahkan untuk mencantumkan semua variabel animasi yang terkandung dalam objek tersebut.
CAnimationBaseObject::GetAutodestroyTransitions
Memberi tahu apakah transisi terkait dihancurkan secara otomatis.
BOOL GetAutodestroyTransitions() const;
Tampilkan Nilai
Jika TRUE, transisi terkait akan dihancurkan secara otomatis; jika FALSE, objek transisi harus dibatalkan alokasinya dengan memanggil aplikasi.
Keterangan
Secara default bendera ini adalah TRUE. Atur bendera ini hanya jika Anda mengalokasikan transisi pada tumpukan dan/atau transisi harus dibatalkan alokasinya oleh aplikasi panggilan.
CAnimationBaseObject::GetGroupID
Mengembalikan ID Grup saat ini.
UINT32 GetGroupID() const;
Tampilkan Nilai
ID Grup Saat Ini.
Keterangan
Gunakan metode ini untuk mengambil ID Grup. Ini adalah 0 jika ID Grup belum ditetapkan secara eksplisit di konstruktor atau dengan SetID.
CAnimationBaseObject::GetObjectID
Mengembalikan ID Objek saat ini.
UINT32 GetObjectID() const;
Tampilkan Nilai
ID Objek Saat Ini.
Keterangan
Gunakan metode ini untuk mengambil ID Objek. Ini adalah 0 jika ID Objek belum diatur secara eksplisit di konstruktor atau dengan SetID.
CAnimationBaseObject::GetUserData
Mengembalikan data yang ditentukan pengguna.
DWORD GetUserData() const;
Tampilkan Nilai
Nilai data kustom.
Keterangan
Panggil metode ini untuk mengambil data kustom saat runtime. Nilai yang dikembalikan adalah 0 jika tidak diinisialisasi secara eksplisit di konstruktor atau dengan SetUserData.
CAnimationBaseObject::m_bAutodestroyTransitions
Menentukan apakah transisi terkait harus dihancurkan secara otomatis.
BOOL m_bAutodestroyTransitions;
CAnimationBaseObject::m_dwUserData
Menyimpan data yang ditentukan pengguna.
DWORD m_dwUserData;
CAnimationBaseObject::m_nGroupID
Menentukan ID Grup objek animasi.
UINT32 m_nGroupID;
CAnimationBaseObject::m_nObjectID
Menentukan ID Objek objek animasi.
UINT32 m_nObjectID;
CAnimationBaseObject::m_pParentController
Penunjuk ke pengontrol animasi induk.
CAnimationController* m_pParentController;
CAnimationBaseObject::SetAutodestroyTransitions
Mengatur bendera untuk menghancurkan transisi secara otomatis.
void SetAutodestroyTransitions(BOOL bValue);
Parameter
bValue
Menentukan bendera penghancurkan otomatis.
Keterangan
Atur bendera ini hanya jika Anda mengalokasikan objek transisi menggunakan operator baru. Jika karena alasan tertentu objek transisi dialokasikan pada tumpukan, bendera penghancurkan otomatis harus FALSE. Secara default bendera ini adalah TRUE.
CAnimationBaseObject::SetID
Mengatur ID baru.
void SetID(
UINT32 nObjectID,
UINT32 nGroupID = 0);
Parameter
nObjectID
Menentukan ID Objek baru.
nGroupID
Menentukan ID Grup baru.
Keterangan
Memungkinkan Anda mengubah ID Objek dan ID Grup. Jika ID Grup baru berbeda dari ID saat ini, objek animasi dipindahkan ke grup lain (grup baru akan dibuat, jika perlu).
CAnimationBaseObject::SetParentAnimationObjects
Menetapkan hubungan antara variabel animasi, yang terkandung dalam objek animasi, dan kontainernya.
virtual void SetParentAnimationObjects();
Keterangan
Pembantu ini dapat digunakan untuk membangun hubungan antara variabel animasi yang terkandung dalam objek animasi, dan kontainernya. Ini mengulangi variabel animasi dan mengatur penunjuk belakang ke objek animasi induk ke setiap variabel animasi. Dalam implementasi saat ini, hubungan aktual dibuat di CAnimationBaseObject::ApplyTransitions, oleh karena itu penunjuk belakang tidak diatur hingga Anda memanggil CAnimationGroup::Animate. Mengetahui hubungan mungkin berguna ketika Anda memproses peristiwa dan perlu mendapatkan objek animasi induk dari CAnimationVariable. Gunakan CAnimationVariable::GetParentAnimationObject.
CAnimationBaseObject::SetUserData
Mengatur data yang ditentukan pengguna.
void SetUserData (DWORD dwUserData);
Parameter
dwUserData
Menentukan data kustom.
Keterangan
Gunakan metode ini untuk mengaitkan data kustom dengan objek animasi. Data ini dapat diambil nanti pada runtime oleh GetUserData.