Struktur DLGTEMPLATEEX
Templat kotak dialog yang diperluas dimulai dengan header DLGTEMPLATEEX yang menjelaskan kotak dialog dan menentukan jumlah kontrol dalam kotak dialog. Untuk setiap kontrol dalam kotak dialog, templat kotak dialog yang diperluas memiliki blok data yang menggunakan format DLGITEMTEMPLATEEX untuk menjelaskan kontrol.
Struktur DLGTEMPLATEEX tidak ditentukan dalam file header standar apa pun. Definisi struktur disediakan di sini untuk menjelaskan format templat yang diperluas untuk kotak dialog.
Sintaks
typedef struct {
WORD dlgVer;
WORD signature;
DWORD helpID;
DWORD exStyle;
DWORD style;
WORD cDlgItems;
short x;
short y;
short cx;
short cy;
sz_Or_Ord menu;
sz_Or_Ord windowClass;
WCHAR title[titleLen];
WORD pointsize;
WORD weight;
BYTE italic;
BYTE charset;
WCHAR typeface[stringLen];
} DLGTEMPLATEEX;
Anggota
-
dlgVer
-
Ketik: WORD
-
Nomor versi templat kotak dialog yang diperluas. Anggota ini harus diatur ke 1.
-
Tanda tangan
-
Ketik: WORD
-
Menunjukkan apakah templat adalah templat kotak dialog yang diperluas. Jika tanda tangan 0xFFFF, ini adalah templat kotak dialog yang diperluas. Dalam hal ini, anggota dlgVer menentukan nomor versi templat. Jika tanda tangan adalah nilai apa pun selain 0xFFFF, ini adalah templat kotak dialog standar yang menggunakan struktur DLGTEMPLATE dan DLGITEMTEMPLATE .
-
helpID
-
Jenis: DWORD
-
Pengidentifikasi konteks bantuan untuk jendela kotak dialog. Ketika sistem mengirim pesan WM_HELP , sistem meneruskan nilai ini di anggota wContextId dari struktur HELPINFO .
-
exStyle
-
Jenis: DWORD
-
Gaya jendela yang diperluas. Anggota ini tidak digunakan saat membuat kotak dialog, tetapi aplikasi yang menggunakan templat kotak dialog dapat menggunakannya untuk membuat jenis jendela lainnya. Untuk daftar nilai, lihat Gaya Jendela yang Diperluas.
-
Gaya
-
Jenis: DWORD
-
Gaya kotak dialog. Anggota ini bisa menjadi kombinasi nilai gaya jendela dan nilai gaya kotak dialog.
Jika gaya menyertakan gaya kotak dialog DS_SETFONT atau DS_SHELLFONT , header DLGTEMPLATEEX dari templat kotak dialog yang diperluas berisi empat anggota tambahan ( menunjuk, berat, miring, dan typeface) yang menjelaskan font yang akan digunakan untuk teks di area klien dan kontrol kotak dialog. Jika memungkinkan, sistem membuat font sesuai dengan nilai yang ditentukan dalam anggota ini. Kemudian sistem mengirim pesan WM_SETFONT ke kotak dialog dan ke setiap kontrol untuk menyediakan handel ke font.
Untuk informasi selengkapnya, lihat Font Kotak Dialog.
-
cDlgItems
-
Ketik: WORD
-
Jumlah kontrol dalam kotak dialog.
-
x
-
Jenis: pendek
-
Koordinat x, dalam unit kotak dialog, dari sudut kiri atas kotak dialog.
-
y
-
Jenis: pendek
-
Koordinat y, dalam unit kotak dialog, sudut kiri atas kotak dialog.
-
Cx
-
Jenis: pendek
-
Lebar, dalam unit kotak dialog, dari kotak dialog.
-
Cy
-
Jenis: pendek
-
Tinggi, dalam unit kotak dialog, dari kotak dialog.
-
menu
-
Jenis: sz_Or_Ord
-
Array panjang variabel elemen 16-bit yang mengidentifikasi sumber daya menu untuk kotak dialog. Jika elemen pertama array ini 0x0000, kotak dialog tidak memiliki menu dan array tidak memiliki elemen lain. Jika elemen pertama 0xFFFF, array memiliki satu elemen tambahan yang menentukan nilai ordinal sumber daya menu dalam file yang dapat dieksekusi. Jika elemen pertama memiliki nilai lain, sistem memperlakukan array sebagai string Unicode yang dihentikan null yang menentukan nama sumber daya menu dalam file yang dapat dieksekusi.
-
windowClass
-
Jenis: sz_Or_Ord
-
Array panjang variabel elemen 16-bit yang mengidentifikasi kelas jendela kotak dialog. Jika elemen pertama array 0x0000, sistem menggunakan kelas kotak dialog yang telah ditentukan sebelumnya untuk kotak dialog dan array tidak memiliki elemen lain. Jika elemen pertama 0xFFFF, array memiliki satu elemen tambahan yang menentukan nilai ordinal dari kelas jendela sistem yang telah ditentukan sebelumnya. Jika elemen pertama memiliki nilai lain, sistem memperlakukan array sebagai string Unicode yang dihentikan null yang menentukan nama kelas jendela terdaftar.
-
judul
-
Jenis: WCHAR[titleLen]
-
Judul kotak dialog. Jika elemen pertama array ini 0x0000, kotak dialog tidak memiliki judul dan array tidak memiliki elemen lain.
-
menunjuk
-
Ketik: WORD
-
Ukuran titik font yang digunakan untuk teks dalam kotak dialog dan kontrolnya.
Anggota ini hanya ada jika anggota gaya menentukan DS_SETFONT atau DS_SHELLFONT.
-
Berat badan
-
Ketik: WORD
-
Bobot font. Perhatikan bahwa, meskipun ini bisa menjadi salah satu nilai yang tercantum untuk anggota lfWeight dari struktur LOGFONT , nilai apa pun yang digunakan akan secara otomatis diubah menjadi FW_NORMAL.
Anggota ini hanya ada jika anggota gaya menentukan DS_SETFONT atau DS_SHELLFONT.
-
Miring
-
Jenis: BYTE
-
Menunjukkan apakah font miring. Jika nilai ini TRUE, font miring.
Anggota ini hanya ada jika anggota gaya menentukan DS_SETFONT atau DS_SHELLFONT.
-
Charset
-
Jenis: BYTE
-
Set karakter yang akan digunakan. Untuk informasi selengkapnya, lihat anggota lfcharsetLOGFONT.
Anggota ini hanya ada jika anggota gaya menentukan DS_SETFONT atau DS_SHELLFONT.
-
Tipografi
-
Jenis: WCHAR[stringLen]
-
Nama typeface untuk font.
Anggota ini hanya ada jika anggota gaya menentukan DS_SETFONT atau DS_SHELLFONT.
Keterangan
Anda bisa menggunakan templat kotak dialog yang diperluas alih-alih templat kotak dialog standar di fungsi CreateDialogIndirectParam, DialogBoxIndirectParam, CreateDialogIndirect, dan DialogBoxIndirect .
Mengikuti header DLGTEMPLATEEX dalam templat kotak dialog yang diperluas adalah satu atau beberapa struktur DLGITEMTEMPLATEEX yang menjelaskan kontrol kotak dialog. Anggota cDlgItems dari struktur DLGITEMTEMPLATEEX menentukan jumlah struktur DLGITEMTEMPLATEEX yang mengikuti dalam templat.
Setiap struktur DLGITEMTEMPLATEEX dalam templat harus diselaraskan pada batas DWORD . Jika anggota gaya menentukan gaya DS_SETFONT atau DS_SHELLFONT , struktur DLGITEMTEMPLATEEX pertama dimulai pada batas DWORD pertama setelah string typeface . Jika gaya ini tidak ditentukan, struktur pertama dimulai pada batas DWORD pertama setelah string judul .
Menu, windowClass, judul, dan array typeface harus diratakan pada batas WORD.
Jika Anda menentukan string karakter di menu, windowClass, judul, dan array typeface , Anda harus menggunakan string Unicode. Gunakan fungsi MultiByteToWideChar untuk menghasilkan string Unicode ini dari string ANSI.
Anggota x, y, cx, dan cy menentukan nilai dalam unit kotak dialog. Anda dapat mengonversi nilai ini menjadi unit layar (piksel) dengan menggunakan fungsi MapDialogRect .
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung |
Windows 2000 Professional [hanya aplikasi desktop] |
Server minimum yang didukung |
Windows 2000 Server [hanya aplikasi desktop] |
Lihat juga
-
Referensi
-
Konseptual
-
Sumber Daya Lainnya