Objek Jendela
MFC memasok kelas CWnd untuk merangkum HWND
handel jendela. Objek CWnd
adalah objek jendela C++, berbeda dari HWND
yang mewakili jendela Windows tetapi berisinya. Gunakan CWnd
untuk memperoleh kelas jendela anak Anda sendiri, atau gunakan salah satu dari banyak kelas MFC yang berasal dari CWnd
. Kelas CWnd
adalah kelas dasar untuk semua jendela, termasuk jendela bingkai, kotak dialog, jendela anak, kontrol, dan bilah kontrol seperti toolbar. Pemahaman yang baik tentang hubungan antara objek jendela C++ dan HWND sangat penting untuk pemrograman yang efektif dengan MFC.
MFC menyediakan beberapa fungsionalitas default dan manajemen jendela, tetapi Anda dapat memperoleh kelas Anda sendiri dari CWnd
dan menggunakan fungsi anggotanya untuk menyesuaikan fungsionalitas yang disediakan. Anda dapat membuat jendela anak dengan membuat CWnd
objek dan memanggil fungsi Buat anggotanya, lalu menyesuaikan jendela anak menggunakan CWnd
fungsi anggota. Anda dapat menyematkan objek yang berasal dari CView, seperti tampilan formulir atau tampilan pohon, di jendela bingkai. Dan Anda dapat mendukung beberapa tampilan dokumen Anda melalui panel pemisah, yang disediakan oleh kelas CSplitterWnd.
Setiap objek yang berasal dari kelas CWnd
berisi peta pesan, di mana Anda dapat memetakan pesan Windows atau ID perintah ke handler Anda sendiri.
Literatur umum tentang pemrograman untuk Windows adalah sumber daya yang baik untuk mempelajari cara menggunakan CWnd
fungsi anggota, yang merangkum HWND
API.
Fungsi untuk Beroperasi Pada CWnd
CWnd
dan kelas jendela turunannya menyediakan konstruktor, destruktor, dan fungsi anggota untuk menginisialisasi objek, membuat struktur Windows yang mendasarinya, dan mengakses enkapsulasi HWND
. CWnd
juga menyediakan fungsi anggota yang merangkum API Windows untuk mengirim pesan, mengakses status jendela, mengonversi koordinat, memperbarui, menggulir, mengakses Clipboard, dan banyak tugas lainnya. Sebagian besar API manajemen jendela Windows yang mengambil HWND
argumen dienkapsulasi sebagai fungsi anggota .CWnd
Nama fungsi dan parameternya dipertahankan CWnd
dalam fungsi anggota. Untuk detail tentang API Windows yang dienkapsulasi oleh CWnd
, lihat kelas CWnd.
Pesan CWnd dan Windows
Salah satu tujuan CWnd
utamanya adalah menyediakan antarmuka untuk menangani pesan Windows, seperti WM_PAINT atau WM_MOUSEMOVE. Banyak fungsi CWnd
anggota adalah handler untuk pesan standar - yang dimulai dengan pengidentifikasi afx_msg dan awalan "Aktif," seperti OnPaint
dan OnMouseMove
. Penanganan dan Pemetaan Pesan mencakup pesan dan penanganan pesan secara rinci. Informasi di sana berlaku sama untuk jendela kerangka kerja dan yang Anda buat sendiri untuk tujuan khusus.
Apa yang ingin Anda ketahui lebih lanjut tentang
Konteks perangkat: objek yang membuat perangkat gambar Windows independen
Objek grafis: pena, kuas, font, bitmap, palet, wilayah