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.
Untuk jenis pesan apa Anda menulis handler? Ada tiga kategori utama:
Pesan Windows
Ini termasuk terutama pesan yang dimulai dengan awalan WM_ , kecuali untuk WM_COMMAND. Pesan Windows ditangani oleh jendela dan tampilan. Pesan ini sering memiliki parameter yang digunakan dalam menentukan cara menangani pesan.
Mengontrol pemberitahuan
Ini termasuk WM_COMMAND pesan pemberitahuan dari kontrol dan jendela anak lainnya ke jendela induk mereka. Misalnya, kontrol edit mengirimkan pesan WM_COMMAND induknya yang berisi kode pemberitahuan kontrol EN_CHANGE ketika pengguna telah mengambil tindakan yang mungkin telah mengubah teks dalam kontrol edit. Handler jendela untuk pesan merespons pesan pemberitahuan dengan cara yang sesuai, seperti mengambil teks dalam kontrol.
Kerangka kerja merutekan pesan pemberitahuan kontrol seperti pesan WM_ lainnya. Namun, satu pengecualian adalah pesan pemberitahuan kontrol BN_CLICKED yang dikirim oleh tombol saat pengguna mengkliknya. Pesan ini diperlakukan khusus sebagai pesan perintah dan dirutekan seperti perintah lainnya.
Pesan perintah
Ini termasuk pesan pemberitahuan WM_COMMAND dari objek antarmuka pengguna: menu, tombol toolbar, dan tombol pintas. Kerangka kerja memproses perintah secara berbeda dari pesan lain, dan dapat ditangani oleh lebih banyak jenis objek, seperti yang dijelaskan dalam Target Perintah.
Pesan Windows dan Pesan Control-Notification
Pesan dalam kategori 1 dan 2 — Pesan Windows dan pemberitahuan kontrol — ditangani oleh jendela: objek kelas yang berasal dari kelas CWnd. Ini termasuk CFrameWnd, CMDIFrameWnd, CMDIChildWnd, CView, CDialog, dan kelas Anda sendiri yang berasal dari kelas dasar ini. Objek tersebut mengenkapsulasi HWND, sebuah pegangan jendela Windows.
Pesan Perintah
Pesan dalam kategori 3 — perintah — dapat ditangani oleh berbagai objek yang lebih luas: dokumen, templat dokumen, dan objek aplikasi itu sendiri selain jendela dan tampilan. Ketika perintah secara langsung memengaruhi beberapa objek tertentu, masuk akal untuk memiliki objek yang menangani perintah. Misalnya, perintah Buka pada menu File secara logis dikaitkan dengan aplikasi: aplikasi membuka dokumen tertentu saat menerima perintah. Jadi handler untuk perintah Buka adalah fungsi anggota dari kelas aplikasi. Untuk informasi selengkapnya tentang perintah dan bagaimana perintah dirutekan ke objek, lihat Cara Kerangka Kerja Memanggil Handler.