Bagikan melalui


Struktur WNDCLASSEXA (winuser.h)

Berisi informasi kelas jendela. Ini digunakan dengan fungsi RegisterClassEx dan GetClassInfoEx .

Struktur WNDCLASSEX mirip dengan struktur WNDCLASS . Ada dua perbedaan. WNDCLASSEX mencakup anggota cbSize , yang menentukan ukuran struktur, dan anggota hIconSm , yang berisi handel ke ikon kecil yang terkait dengan kelas jendela.

Sintaks

typedef struct tagWNDCLASSEXA {
  UINT      cbSize;
  UINT      style;
  WNDPROC   lpfnWndProc;
  int       cbClsExtra;
  int       cbWndExtra;
  HINSTANCE hInstance;
  HICON     hIcon;
  HCURSOR   hCursor;
  HBRUSH    hbrBackground;
  LPCSTR    lpszMenuName;
  LPCSTR    lpszClassName;
  HICON     hIconSm;
} WNDCLASSEXA, *PWNDCLASSEXA, *NPWNDCLASSEXA, *LPWNDCLASSEXA;

Anggota

cbSize

Jenis: UINT

Ukuran, dalam byte, dari struktur ini. Atur anggota ini ke sizeof(WNDCLASSEX). Pastikan untuk mengatur anggota ini sebelum memanggil fungsi GetClassInfoEx .

style

Jenis: UINT

Gaya kelas. Anggota ini bisa menjadi kombinasi apa pun dari Gaya Kelas.

lpfnWndProc

Jenis: WNDPROC

Penunjuk ke prosedur jendela. Anda harus menggunakan fungsi CallWindowProc untuk memanggil prosedur jendela. Untuk informasi selengkapnya, lihat WindowProc.

cbClsExtra

Jenis: int

Jumlah byte tambahan untuk dialokasikan mengikuti struktur kelas jendela. Sistem menginisialisasi byte ke nol.

cbWndExtra

Jenis: int

Jumlah byte tambahan untuk dialokasikan setelah instans jendela. Sistem menginisialisasi byte ke nol. Jika aplikasi menggunakan WNDCLASSEX untuk mendaftarkan kotak dialog yang dibuat dengan menggunakan direktif CLASS dalam file sumber daya, aplikasi harus mengatur anggota ini ke DLGWINDOWEXTRA.

hInstance

Jenis: HINSTANCE

Handel ke instans yang berisi prosedur jendela untuk kelas .

hIcon

Jenis: HICON

Handel ke ikon kelas. Anggota ini harus menjadi pegangan ke sumber daya ikon. Jika anggota ini NULL, sistem menyediakan ikon default.

hCursor

Jenis: HCURSOR

Handel ke kursor kelas. Anggota ini harus menangani sumber daya kursor. Jika anggota ini NULL, aplikasi harus secara eksplisit mengatur bentuk kursor setiap kali mouse bergerak ke jendela aplikasi.

hbrBackground

Jenis: HBRUSH

Handel ke kuas latar belakang kelas. Anggota ini dapat menjadi pegangan pada kuas yang akan digunakan untuk melukis latar belakang, atau bisa menjadi nilai warna. Nilai warna harus merupakan salah satu warna sistem standar berikut (nilai 1 harus ditambahkan ke warna yang dipilih). Jika nilai warna diberikan, Anda harus mengonversinya menjadi salah satu jenis HBRUSH berikut:

  • COLOR_ACTIVEBORDER
  • COLOR_ACTIVECAPTION
  • COLOR_APPWORKSPACE
  • COLOR_BACKGROUND
  • COLOR_BTNFACE
  • COLOR_BTNSHADOW
  • COLOR_BTNTEXT
  • COLOR_CAPTIONTEXT
  • COLOR_GRAYTEXT
  • COLOR_HIGHLIGHT
  • COLOR_HIGHLIGHTTEXT
  • COLOR_INACTIVEBORDER
  • COLOR_INACTIVECAPTION
  • COLOR_MENU
  • COLOR_MENUTEXT
  • COLOR_SCROLLBAR
  • COLOR_WINDOW
  • COLOR_WINDOWFRAME
  • COLOR_WINDOWTEXT
Sistem secara otomatis menghapus kuas latar belakang kelas saat kelas tidak terdaftar dengan menggunakan UnregisterClass. Aplikasi tidak boleh menghapus kuas ini.

Ketika anggota ini NULL, aplikasi harus melukis latar belakangnya sendiri setiap kali diminta untuk melukis di area kliennya. Untuk menentukan apakah latar belakang harus dicat, aplikasi dapat memproses pesan WM_ERASEBKGND atau menguji anggota fErase struktur PAINTSTRUCT yang diisi oleh fungsi BeginPaint .

lpszMenuName

Jenis: LPCTSTR

Penunjuk ke string karakter yang dihentikan null yang menentukan nama sumber daya menu kelas, saat nama muncul di file sumber daya. Jika Anda menggunakan bilangan bulat untuk mengidentifikasi menu, gunakan makro MAKEINTRESOURCE . Jika anggota ini NULL, jendela milik kelas ini tidak memiliki menu default.

lpszClassName

Jenis: LPCTSTR

Penunjuk ke string yang dihentikan null atau merupakan atom. Jika parameter ini adalah atom, parameter harus berupa atom kelas yang dibuat oleh panggilan sebelumnya ke fungsi RegisterClass atau RegisterClassEx . Atom harus dalam kata urutan rendah dari lpszClassName; kata urutan tinggi harus nol.

Jika lpszClassName adalah string, lpszClassName menentukan nama kelas jendela. Nama kelas dapat berupa nama apa pun yang terdaftar di RegisterClass atau RegisterClassEx, atau nama kelas kontrol yang telah ditentukan sebelumnya.

Panjang maksimum untuk lpszClassName adalah 256. Jika lpszClassName lebih besar dari panjang maksimum, fungsi RegisterClassEx akan gagal.

hIconSm

Jenis: HICON

Handel ke ikon kecil yang terkait dengan kelas jendela. Jika anggota ini adalah NULL, sistem mencari sumber daya ikon yang ditentukan oleh anggota hIcon untuk ikon dengan ukuran yang sesuai untuk digunakan sebagai ikon kecil.

Keterangan

Catatan

Header winuser.h mendefinisikan WNDCLASSEX sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Header winuser.h (sertakan Windows.h)

Lihat juga

Konseptual

GetClassInfoEx

Referensi

RegisterClassEx

Batalkan pendaftaranKelas

Kelas Jendela