Fungsi SetWindowSubclass (commctrl.h)
Menginstal atau memperbarui panggilan balik subkelas jendela.
Sintaks
BOOL SetWindowSubclass(
[in] HWND hWnd,
[in] SUBCLASSPROC pfnSubclass,
[in] UINT_PTR uIdSubclass,
[in] DWORD_PTR dwRefData
);
Parameter
[in] hWnd
Jenis: HWND
Handel jendela sedang di-subkelas.
[in] pfnSubclass
Jenis: SUBCLASSPROC
Penunjuk ke prosedur jendela. Pointer ini dan ID subkelas secara unik mengidentifikasi panggilan balik subkelas ini. Untuk prototipe fungsi panggilan balik, lihat SUBCLASSPROC.
[in] uIdSubclass
Jenis: UINT_PTR
ID subkelas. ID ini bersama dengan prosedur subkelas secara unik mengidentifikasi subkelas. Untuk menghapus subkelas, teruskan prosedur subkelas dan nilai ini ke fungsi RemoveWindowSubclass . Nilai ini diteruskan ke prosedur subkelas dalam parameter uIdSubclass.
[in] dwRefData
Jenis: DWORD_PTR
DWORD_PTR untuk mereferensikan data. Arti dari nilai ini ditentukan oleh aplikasi panggilan. Nilai ini diteruskan ke prosedur subkelas dalam parameter dwRefData. DwRefData yang berbeda dikaitkan dengan setiap kombinasi handel jendela, prosedur subkelas, dan uIdSubclass.
Mengembalikan nilai
Jenis: BOOL
TRUE jika panggilan balik subkelas berhasil diinstal; jika tidak, FALSE.
Keterangan
Panggilan balik subkelas diidentifikasi oleh kombinasi alamat panggilan balik dan ID subkelas yang ditentukan pemanggil. Jika alamat panggilan balik dan pasangan ID belum diinstal, maka fungsi ini menginstal subkelas. Jika pasangan telah diinstal, maka fungsi ini hanya memperbarui data referensi.
Setiap panggilan balik dapat menyimpan satu DWORD_PTR data referensi, yang diteruskan ke fungsi panggilan balik ketika dipanggil untuk memfilter pesan. Tidak ada penghitungan referensi yang dilakukan untuk panggilan balik; ini dapat berulang kali memanggil SetWindowSubclass untuk mengubah nilai elemen data referensinya.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows XP [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2003 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | commctrl.h |
Pustaka | Comctl32.lib |
DLL | Comctl32.dll (versi 5.8 atau yang lebih baru) |
Set API | ext-ms-win-shell-comctl32-window-l1-1-0 (diperkenalkan dalam Windows 10, versi 10.0.14393) |