Menggunakan Kontrol Pohon
Penggunaan umum kontrol pohon (CTreeCtrl) mengikuti pola di bawah ini:
Kontrol dibuat. Jika kontrol ditentukan dalam templat kotak dialog atau jika Anda menggunakan
CTreeView
, pembuatan otomatis saat kotak dialog atau tampilan dibuat. Jika Anda ingin membuat kontrol pohon sebagai jendela anak dari beberapa jendela lain, gunakan fungsi Buat anggota.Jika Anda ingin kontrol pohon Anda menggunakan gambar, atur daftar gambar dengan memanggil SetImageList. Anda juga dapat mengubah indentasi dengan memanggil SetIndent. Waktu yang baik untuk melakukan ini ada di OnInitDialog (untuk kontrol dalam kotak dialog) atau OnInitialUpdate (untuk tampilan).
Masukkan data ke dalam kontrol dengan memanggil
CTreeCtrl
fungsi InsertItem sekali untuk setiap item data.InsertItem
mengembalikan handel ke item yang dapat Anda gunakan untuk merujuknya nanti, seperti saat menambahkan item turunan. Waktu yang baik untuk menginisialisasi data ada diOnInitDialog
(untuk kontrol dalam kotak dialog) atauOnInitialUpdate
(untuk tampilan).Saat pengguna berinteraksi dengan kontrol, pengguna akan mengirim berbagai pesan pemberitahuan. Anda dapat menentukan fungsi untuk menangani setiap pesan yang ingin Anda tangani dengan menambahkan makro ON_NOTIFY_REFLECT di peta pesan jendela kontrol Anda atau dengan menambahkan makro ON_NOTIFY ke peta pesan jendela induk Anda. Lihat Pesan Pemberitahuan Kontrol Pohon nanti dalam topik ini untuk daftar kemungkinan pemberitahuan.
Panggil berbagai fungsi Atur anggota untuk mengatur nilai untuk kontrol. Perubahan yang bisa Anda buat termasuk mengatur indentasi dan mengubah teks, gambar, atau data yang terkait dengan item.
Gunakan berbagai fungsi Get untuk memeriksa konten kontrol. Anda juga dapat melintasi konten kontrol pohon dengan fungsi yang memungkinkan Anda mengambil handel ke orang tua, anak-anak, dan saudara kandung dari item tertentu. Anda bahkan dapat mengurutkan anak-anak dari simpul tertentu.
Setelah selesai dengan kontrol, pastikan itu dihancurkan dengan benar. Jika kontrol pohon berada dalam kotak dialog atau jika tampilan, kontrol
CTreeCtrl
pohon tersebut akan dihancurkan secara otomatis. Jika tidak, Anda perlu memastikan bahwa kontrol danCTreeCtrl
objek dihancurkan dengan benar.