Bagikan melalui


Struktur PROPSHEETHEADER

Menentukan bingkai dan halaman lembar properti.

Sintaks

typedef struct {
    DWORD      dwSize;
    DWORD      dwFlags;
    HWND       hwndParent;
    HINSTANCE  hInstance;
    union {
        HICON   hIcon;
        LPCTSTR pszIcon;
    };
    LPCTSTR  pszCaption;
    UINT     nPages;
    union {
        UINT    nStartPage;
        LPCTSTR pStartPage;
    };
    union {
        LPCPROPSHEETPAGE ppsp;
        HPROPSHEETPAGE   *phpage;
    };
    PFNPROPSHEETCALLBACK pfnCallback;
    union {
        HBITMAP hbmWatermark;
        LPCTSTR pszbmWatermark;
    };
    HPALETTE  hplWatermark;
    union {
        HBITMAP hbmHeader;
        LPCSTR  pszbmHeader;
    };
} PROPSHEETHEADER, *LPPROPSHEETHEADER;

Anggota

dwSize

Jenis: DWORD

Ukuran, dalam byte, dari struktur ini. Manajer lembar properti menggunakan anggota ini untuk menentukan versi struktur PROPSHEETHEADER mana yang Anda gunakan. Untuk informasi selengkapnya, lihat Keterangan.

dwFlags

Jenis: DWORD

Bendera yang menunjukkan opsi mana yang akan digunakan saat membuat halaman lembar properti. Anggota ini bisa menjadi kombinasi dari nilai berikut.

Nilai Makna
PSH_DEFAULT (0x00000000) Menggunakan arti default untuk semua anggota struktur, dan membuat lembar properti normal. Bendera ini memiliki nilai nol dan tidak digabungkan dengan bendera lain.
PSH_AEROWIZARD (0x00004000) Versi 6.00 dan yang lebih baru. Membuat lembar properti wizard yang menggunakan gaya Aero. Bendera PSH_WIZARD juga harus diatur. Model apartemen berulir tunggal (STA) harus digunakan.
PSH_HASHELP (0x00000200) Mengizinkan halaman lembar properti untuk menampilkan tombol Bantuan . Anda juga harus mengatur bendera PSP_HASHELP di struktur PROPSHEETPAGE halaman saat halaman dibuat. Jika salah satu halaman lembar properti awal mengaktifkan tombol Bantuan , PSH_HASHELP akan diatur secara otomatis. Jika tidak ada halaman awal yang mengaktifkan tombol Bantuan , Anda harus secara eksplisit mengatur PSH_HASHELP jika Anda ingin memiliki tombol Bantuan pada halaman apa pun yang mungkin ditambahkan nanti. Bendera ini tidak didukung bersama dengan PSH_AEROWIZARD.
PSH_HEADER (0x00080000) Versi 5.80 dan yang lebih baru. Menunjukkan bahwa bitmap header akan digunakan dengan wizard Wizard97. Anda juga harus mengatur bendera PSH_WIZARD97. Jika bendera PSH_USEHBMHEADER diatur, maka bitmap header diperoleh dari anggota hbmHeader . Jika tidak, bitmap header diperoleh dari anggota pszbmHeader . Bendera ini tidak didukung bersama dengan PSH_AEROWIZARD.
PSH_HEADERBITMAP (0x08000000) Versi 6.00 dan yang lebih baru. Anggota pszbmHeader menentukan bitmap yang ditampilkan di area header. Harus digunakan dalam kombinasi dengan PSH_AEROWIZARD.
PSH_MODELESS (0x00000400) Menyebabkan fungsi PropertySheet membuat lembar properti sebagai kotak dialog tanpa mode, bukan sebagai kotak dialog modal. Ketika bendera ini diatur, PropertySheet kembali segera setelah kotak dialog dibuat, dan nilai yang dikembalikan dari PropertySheet adalah gagang jendela ke kotak dialog lembar properti. Bendera ini tidak didukung bersama dengan PSH_AEROWIZARD.
PSH_NOAPPLYNOW (0x00000080) Menghapus tombol Terapkan . Bendera ini tidak didukung bersama dengan PSH_AEROWIZARD.
PSH_NOCONTEXTHELP (0x02000000) Versi 5.80 dan yang lebih baru. Menghapus tombol Bantuan peka konteks ("?"), yang biasanya ada pada bilah caption lembar properti. Bendera ini tidak valid untuk panduan. Lihat Tentang Lembar Properti untuk diskusi tentang cara menghapus tombol Bantuan bilah caption untuk versi kontrol umum yang lebih lama. Bendera ini tidak didukung bersama dengan PSH_AEROWIZARD.
PSH_NOMARGIN (0x10000000) Versi 6.00 atau yang lebih baru. Menentukan bahwa tidak ada margin yang disisipkan antara halaman dan bingkai. Harus digunakan dalam kombinasi dengan PSH_AEROWIZARD.
PSH_PROPSHEETPAGE (0x00000008) Menggunakan anggota ppsp dan mengabaikan anggota phpage saat membuat halaman untuk lembar properti.
PSH_PROPTITLE (0x00000001) Menunjukkan bahwa pszCaption adalah nama hal yang propertinya ditampilkan. Windows membuat penyesuaian tergantung versi dan bahasa dengan caption. Misalnya, dalam bahasa Inggris, frasa "Properti untuk" ditambahkan ke pszCaption yang tidak kosong (dan jika pszCaption menghasilkan caption kosong, maka judulnya hanyalah "Properti"). Jika bendera ini dihilangkan, maka pszCaption digunakan tanpa diubah.
PSH_RESIZABLE (0x04000000) Memperbolehkan wizard diubah ukurannya oleh pengguna. Maksimalkan dan minimalkan tombol muncul di bingkai wizard dan bingkai dapat diukur. Untuk menggunakan bendera ini, Anda juga harus mengatur PSH_AEROWIZARD.
PSH_RTLREADING (0x00000800) Mengatur lembar properti atau jendela wizard ke urutan baca kanan-ke-kiri (RTL), sesuai untuk bahasa seperti Ibrani dan Arab. Jika bendera ini tidak ditentukan, jendela lembar properti default ke urutan baca kiri-ke-kanan (LTR), dan jendela wizard cocok dengan urutan baca halaman saat ini.
PSH_STRETCHWATERMARK (0x00040000) Meregangkan cap air dalam wizard bergaya Wizard97. Bendera ini tidak didukung bersama dengan PSH_AEROWIZARD. Bendera gaya ini hanya disertakan untuk memberikan kompatibilitas mundur untuk aplikasi tertentu. Penggunaannya tidak disarankan, dan hanya didukung oleh kontrol umum versi 4.0 dan 4.01. Dengan kontrol umum versi 5.80 dan yang lebih baru, bendera ini diabaikan.
PSH_USECALLBACK (0x00000100) Memanggil fungsi yang ditentukan oleh parameter pfnCallback saat peristiwa tertentu terjadi. Untuk informasi selengkapnya, lihat deskripsi fungsi panggilan balik PFNPROPSHEETCALLBACK .
PSH_USEHBMHEADER (0x00100000) Versi 5.80. Mendapatkan bitmap header dari anggota hbmHeader alih-alih anggota pszbmHeader . Anda juga harus mengatur bendera PSH_AEROWIZARD atau bendera PSH_WIZARD97 bersama dengan bendera PSH_HEADER.
PSH_USEHBMWATERMARK (0x00010000) Versi 5.80. Mendapatkan bitmap marka air dari anggota hbmWatermarkalih-alih anggota pszbmWatermark . Anda juga harus mengatur PSH_WIZARD97 dan PSH_WATERMARK. Bendera ini tidak didukung bersama dengan PSH_AEROWIZARD.
PSH_USEHICON (0x00000002) Menggunakan hIcon sebagai ikon kecil dalam bilah judul kotak dialog lembar properti.
PSH_USEHPLWATERMARK (0x00020000) Versi 5.80. Menggunakan struktur HPALETTE yang diacu oleh anggota hplWatermark alih-alih palet default untuk menggambar bitmap marka air dan/atau bitmap header untuk wizard Wizard97. Anda juga harus mengatur PSH_WIZARD97, dan PSH_WATERMARK atau PSH_HEADER. Bendera ini tidak didukung bersama dengan PSH_AEROWIZARD.
PSH_USEICONID (0x00000004) Menggunakan pszIcon sebagai nama sumber daya ikon untuk memuat dan menggunakan sebagai ikon kecil dalam bilah judul kotak dialog lembar properti.
PSH_USEPAGELANG (0x00200000) Versi 5.80. Menentukan bahwa bahasa untuk lembar properti akan diambil dari sumber daya halaman pertama. Halaman tersebut harus ditentukan oleh pengidentifikasi sumber daya.
PSH_USEPSTARTPAGE (0x00000040) Menggunakan anggota pStartPage alih-alih anggota nStartPage saat menampilkan halaman awal lembar properti.
PSH_WATERMARK (0x00008000) Versi 5.80. Menentukan bahwa bitmap cap air akan digunakan dengan panduan Wizard97 pada halaman yang memiliki gaya PSP_HIDEHEADER. Anda juga harus mengatur bendera PSH_WIZARD97. Bitmap marka air diperoleh dari anggota pszbmWatermark , kecuali PSH_USEHBMWATERMARK ditetapkan. Dalam hal ini, bitmap header diperoleh dari anggota hbmWatermark . Bendera ini tidak didukung bersama dengan PSH_AEROWIZARD.
PSH_WIZARD (0x00000020) Membuat lembar properti wizard. Saat menggunakan PSH_AEROWIZARD, Anda juga harus mengatur bendera ini.
PSH_WIZARD97 (0x01000000) Versi 5.80. Membuat lembar properti bergaya Wizard97, yang mendukung bitmap di header halaman interior dan di sisi kiri halaman eksterior. Bendera ini tidak didukung bersama dengan PSH_AEROWIZARD.
PSH_WIZARDCONTEXTHELP (0x00001000) Menambahkan tombol Bantuan peka konteks ("?"), yang biasanya tidak ada dari bilah caption wizard. Bendera ini tidak valid untuk lembar properti reguler. Bendera ini tidak didukung bersama dengan PSH_AEROWIZARD.
PSH_WIZARDHASFINISH (0x00000010) Selalu tampilkan tombol Selesai pada wizard. Anda juga harus mengatur PSH_WIZARD, PSH_WIZARD97, atau PSH_AEROWIZARD.
PSH_WIZARD_LITE (0x00400000) Versi 5.80. Menggunakan gaya Wizard-lite. Gaya ini mirip dalam penampilan dengan PSH_WIZARD97, tetapi diimplementasikan seperti PSH_WIZARD. Ada beberapa batasan tentang bagaimana halaman diformat. Misalnya, tidak ada batas yang diberlakukan, dan gaya PSH_WIZARD_LITE tidak melukis bitmap marka air dan header untuk Anda seperti yang dilakukan Wizard97. Bendera ini tidak didukung bersama dengan PSH_AEROWIZARD.

hwndParent

Jenis: HWND

Tangani ke jendela pemilik lembar properti.

hInstance

Jenis: HINSTANCE

Tangani ke instans untuk memuat ikon, sumber daya string judul, nama halaman awal, bitmap header, atau marka air. Jika anggota pszIcon, pszCaption, pStartPage, pszbmHeader, atau pszbmWatermark mengidentifikasi sumber daya untuk dimuat, anggota ini harus ditentukan.

hIcon

Jenis: HICON

Tangani ikon untuk digunakan sebagai ikon kecil dalam bilah judul kotak dialog lembar properti. Anggota ini digunakan jika anggota dwFlags menyertakan PSH_USEHICON. Anggota ini dinyatakan sebagai serikat dengan pszIcon.

pszIcon

Jenis: LPCTSTR

Sumber daya ikon untuk digunakan sebagai ikon kecil dalam bilah judul kotak dialog lembar properti. Anggota ini digunakan jika anggota dwFlags menyertakan PSH_USEICONID. Anggota ini dapat menentukan pengidentifikasi sumber daya ikon atau alamat string yang menentukan nama sumber daya ikon. Dalam kedua kasus, ikon dimuat dari instans yang disediakan oleh anggota hInstance . Anggota ini dinyatakan sebagai serikat dengan hIcon.

pszCaption

Jenis: LPCTSTR

Judul kotak dialog lembar properti. Anggota ini dapat menentukan pengidentifikasi sumber daya string (dimuat dari instans yang ditentukan oleh anggota hInstance ) atau alamat string yang menentukan judul. Jika anggota dwFlags menyertakan PSH_PROPTITLE, string Properti untuk disisipkan di awal judul. Bidang ini diabaikan untuk panduan Wizard97. Untuk wizard Aero, string saja digunakan untuk caption, terlepas dari apakah bendera PSH_PROPTITLE diatur.

nPages

Jenis: UINT

Jumlah halaman lembar properti yang disediakan dalam array ppsp atau phpage .

nStartPage

Jenis: UINT

Indeks berbasis nol dari halaman awal yang muncul saat kotak dialog lembar properti dibuat. Anggota ini digunakan jika anggota dwFlags tidak menyertakan bendera PSH_USEPSTARTPAGE. Anggota ini dinyatakan sebagai serikat dengan pStartPage.

pStartPage

Jenis: LPCTSTR

Nama halaman awal yang muncul saat kotak dialog lembar properti dibuat. Anggota ini digunakan jika anggota dwFlags menyertakan bendera PSH_USESTARTPAGE. Anggota ini dapat menentukan pengidentifikasi sumber daya string (dimuat dari instans yang ditentukan oleh anggota hInstance ) atau alamat string yang menentukan nama. Nama halaman awal dicocokkan dengan keterangan halaman. Anggota ini dinyatakan sebagai serikat dengan nStartPage.

ppsp

Jenis: LPCPROPSHEETPAGE

Penunjuk ke array struktur PROPSHEETPAGE yang menentukan halaman dalam lembar properti. Jika anggota dwFlags tidak menyertakan PSH_PROPSHEETPAGE, anggota ini diabaikan. Perhatikan bahwa struktur PROPSHEETPAGE berukuran variabel. Aplikasi yang mengurai array yang ditujukan oleh ppsp harus mempertimbangkan ukuran setiap halaman. Anggota ini dinyatakan sebagai serikat dengan phpage.

phpage

Jenis: HPROPSHEETPAGE*

Penunjuk ke array handel ke halaman lembar properti. Anggota ini digunakan jika anggota dwFlags tidak menyertakan PSH_PROPSHEETPAGE. Setiap handel harus dibuat oleh panggilan sebelumnya ke fungsi CreatePropertySheetPage . Ketika fungsi PropertySheet kembali, setiap handel HPROPSHEETPAGE dalam array phpage akan dihancurkan. Anggota ini dinyatakan sebagai serikat dengan ppsp.

pfnCallback

Jenis: PFNPROPSHEETCALLBACK

Penunjuk ke fungsi panggilan balik yang ditentukan aplikasi yang dipanggil ketika peristiwa tertentu terjadi. Untuk informasi selengkapnya tentang fungsi panggilan balik, lihat deskripsi fungsi panggilan balik PFNPROPSHEETCALLBACK . Jika anggota dwFlags tidak menyertakan PSH_USECALLBACK, anggota ini diabaikan.

hbmWatermark

Jenis: HBITMAP

Versi 5.80 atau yang lebih baru. Tangani ke bitmap marka air. Jika anggota dwFlags tidak menyertakan PSH_USEHBMWATERMARK, anggota ini diabaikan.

pszbmWatermark

Jenis: LPCTSTR

Versi 5.80 atau yang lebih baru. Sumber daya bitmap untuk digunakan sebagai marka air. Anggota ini dapat menentukan pengidentifikasi sumber daya bitmap atau alamat string yang menentukan nama sumber daya bitmap. Jika anggota dwFlags menyertakan PSH_USEHBMWATERMARK, anggota ini diabaikan.

hplWatermark

Jenis: HPALETTE

Versi 5.80 atau yang lebih baru. Struktur HPALETTE yang digunakan untuk menggambar bitmap marka air dan/atau bitmap header. Jika anggota dwFlags tidak menyertakan PSH_USEHPLWATERMARK, anggota ini diabaikan.

hbmHeader

Jenis: HBITMAP

Versi 5.80 atau yang lebih baru. Tangani ke bitmap header. Jika anggota dwFlags tidak menyertakan PSH_USEHBMHEADER, anggota ini diabaikan.

pszbmHeader

Jenis: LPCSTR

Versi 5.80 atau yang lebih baru. Sumber daya bitmap untuk digunakan sebagai header. Anggota ini dapat menentukan pengidentifikasi sumber daya bitmap atau alamat string yang menentukan nama sumber daya bitmap. Jika anggota dwFlags menyertakan PSH_USEHBMHEADER, anggota ini diabaikan.

Keterangan

Jika pengguna memilih pengaturan seperti Font Besar, yang memperbesar kotak dialog, marka air yang dicat pada halaman mulai dan selesai juga akan diperbesar. Ukuran dan posisi bitmap asli akan tetap sama. Area tambahan akan diisi dengan warna piksel di sudut kiri atas bitmap.

Gaya PSH_WIZARD, PSH_WIZARD97, dan PSH_WIZARD_LITE saling tidak kompatibel. Hanya salah satu bendera gaya ini yang harus diatur. PSH_AEROWIZARD harus dikombinasikan dengan PSH_WIZARD.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Header Prsht.h
Nama Unicode dan ANSI PROPSHEETHEADERW (Unicode) dan PROPSHEETHEADERA (ANSI)