Bagikan melalui


Memahami Sifat Jendela

Kelas sifat jendela menyediakan metode sederhana untuk menstandarkan gaya yang digunakan untuk pembuatan objek jendela ATL. Sifat jendela diterima sebagai parameter templat oleh CWindowImpl dan kelas jendela ATL lainnya sebagai cara untuk menyediakan gaya jendela default di tingkat kelas.

Jika pembuat instans jendela tidak menyediakan gaya secara eksplisit dalam panggilan ke Buat, Anda dapat menggunakan kelas sifat untuk memastikan bahwa jendela masih dibuat dengan gaya yang benar. Anda bahkan dapat memastikan bahwa gaya tertentu diatur untuk semua instans kelas jendela tersebut sambil mengizinkan gaya lain diatur berdasarkan per instans.

Templat Ciri Jendela ATL

ATL menyediakan dua templat sifat jendela yang memungkinkan Anda mengatur gaya default pada waktu kompilasi menggunakan parameter templatnya.

Kelas Deskripsi
CWinTraits Gunakan templat ini saat Anda ingin menyediakan gaya jendela default yang hanya akan digunakan ketika tidak ada gaya lain yang ditentukan dalam panggilan ke Create. Gaya yang disediakan pada waktu proses lebih diutamakan daripada gaya yang ditetapkan pada waktu kompilasi.
CWinTraitsOR Gunakan kelas ini saat Anda ingin menentukan gaya yang harus selalu diatur untuk kelas jendela. Gaya yang disediakan pada waktu proses dikombinasikan dengan gaya yang diatur pada waktu kompilasi menggunakan operator OR bitwise.

Selain templat ini, ATL menyediakan sejumlah spesialisasi CWinTraits templat yang telah ditentukan sebelumnya untuk kombinasi gaya jendela yang umum digunakan. Lihat dokumentasi referensi CWinTraits untuk detail selengkapnya.

Ciri Jendela Kustom

Dalam situasi yang tidak mungkin bahwa mengkhususkan salah satu templat yang disediakan oleh ATL tidak cukup dan Anda perlu membuat kelas sifat Anda sendiri, Anda hanya perlu membuat kelas yang mengimplementasikan dua fungsi statis: GetWndStyle dan GetWndStyleEx:

static DWORD GetWndStyle(DWORD dwStyle);
static DWORD GetWndExStyle(DWORD dwExStyle);

Masing-masing fungsi ini akan diteruskan beberapa nilai gaya pada run time yang dapat digunakan untuk menghasilkan nilai gaya baru. Jika kelas sifat jendela Anda digunakan sebagai argumen templat ke kelas jendela ATL, nilai gaya yang diteruskan ke fungsi statis ini akan menjadi apa pun yang diteruskan sebagai argumen gaya untuk Membuat.

Lihat juga

Kelas Jendela