Struktur DLGITEMTEMPLATE (winuser.h)

Menentukan dimensi dan gaya kontrol dalam kotak dialog. Satu atau beberapa struktur ini dikombinasikan dengan struktur DLGTEMPLATE untuk membentuk templat standar untuk kotak dialog.

Sintaks

typedef struct {
  DWORD style;
  DWORD dwExtendedStyle;
  short x;
  short y;
  short cx;
  short cy;
  WORD  id;
} DLGITEMTEMPLATE;

Anggota

style

Jenis: DWORD

Gaya kontrol. Anggota ini bisa menjadi kombinasi nilai gaya jendela (seperti WS_BORDER) dan satu atau beberapa nilai gaya kontrol (seperti BS_PUSHBUTTON dan ES_LEFT).

dwExtendedStyle

Jenis: DWORD

Gaya yang diperluas untuk jendela. Anggota ini tidak digunakan untuk membuat kontrol dalam kotak dialog, tetapi aplikasi yang menggunakan templat kotak dialog dapat menggunakannya untuk membuat jenis jendela lainnya. Untuk daftar nilai, lihat Gaya Jendela yang Diperluas.

x

Jenis: pendek

Koordinat x, dalam unit kotak dialog, dari sudut kiri atas kontrol. Koordinat ini selalu relatif terhadap sudut kiri atas area klien kotak dialog.

y

Jenis: pendek

Koordinat y, dalam unit kotak dialog, dari sudut kiri atas kontrol. Koordinat ini selalu relatif terhadap sudut kiri atas area klien kotak dialog.

cx

Jenis: pendek

Lebar, dalam unit kotak dialog, kontrol.

cy

Jenis: pendek

Tinggi, dalam unit kotak dialog, kontrol.

id

Jenis: WORD

Pengidentifikasi kontrol.

Keterangan

Dalam kotak dialog templat standar, struktur DLGITEMTEMPLATE selalu segera diikuti oleh tiga array panjang variabel yang menentukan kelas, judul, dan data pembuatan untuk kontrol. Setiap array terdiri dari satu atau beberapa elemen 16-bit.

Setiap struktur DLGITEMTEMPLATE dalam templat harus diselaraskan pada batas DWORD . Array kelas dan judul harus diratakan pada batas WORD . Array data pembuatan harus diratakan pada batas WORD .

Segera mengikuti setiap struktur DLGITEMTEMPLATE adalah array kelas yang menentukan kelas jendela kontrol. Jika elemen pertama dari array ini adalah nilai apa pun selain 0xFFFF, sistem memperlakukan array sebagai string Unicode yang dihentikan null yang menentukan nama kelas jendela terdaftar. Jika elemen pertama 0xFFFF, array memiliki satu elemen tambahan yang menentukan nilai ordinal dari kelas sistem yang telah ditentukan sebelumnya. Ordinal dapat menjadi salah satu nilai atom berikut.

Nilai Makna
0x0080 Tombol
0x0081 Edit
0x0082 Statis
0x0083 Kotak daftar
0x0084 Bilah gulir
0x0085 Kotak kombo
 

Mengikuti array kelas adalah array judul yang berisi teks awal atau pengidentifikasi sumber daya kontrol. Jika elemen pertama dari array ini 0xFFFF, array memiliki satu elemen tambahan yang menentukan nilai ordinal sumber daya, seperti ikon, dalam file yang dapat dieksekusi. Anda dapat menggunakan pengidentifikasi sumber daya untuk kontrol, seperti kontrol ikon statis, yang memuat dan menampilkan ikon atau sumber daya lainnya, bukan teks. Jika elemen pertama adalah nilai selain 0xFFFF, sistem memperlakukan array sebagai string Unicode yang dihentikan null yang menentukan teks awal.

Array data pembuatan dimulai pada batas WORD berikutnya setelah array judul. Data pembuatan ini dapat memiliki ukuran dan format apa pun. Jika kata pertama dari array data pembuatan bukan nol, itu menunjukkan ukuran, dalam byte, dari data pembuatan (termasuk kata ukuran). Prosedur jendela kontrol harus dapat menginterpretasikan data. Ketika sistem membuat kontrol, sistem meneruskan penunjuk ke data ini dalam parameter lParam dari pesan WM_CREATE yang dikirim ke kontrol.

Jika Anda menentukan string karakter di kelas dan array judul, Anda harus menggunakan string Unicode. Gunakan fungsi MultiByteToWideChar untuk menghasilkan string Unicode dari string ANSI.

Anggota x, y, cx, dan cy menentukan nilai dalam unit kotak dialog. Anda dapat mengonversi nilai ini ke unit layar (piksel) dengan menggunakan fungsi MapDialogRect .

Persyaratan

   
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

CreateDialogIndirect

CreateDialogIndirectParam

CreateWindowEx

DLGITEMTEMPLATEEX

DLGTEMPLATE

DLGTEMPLATEEX

Kotak Dialog

DialogBoxIndirect

DialogBoxIndirectParam

MapDialogRect

MultiByteToWideChar

Sumber Daya Lain

Referensi

WM_CREATE