Struktur PAGESETUPDLGA (commdlg.h)
Berisi informasi yang digunakan fungsi PageSetupDlg untuk menginisialisasi kotak dialog Penyetelan Halaman . Setelah pengguna menutup kotak dialog, sistem mengembalikan informasi tentang parameter halaman yang ditentukan pengguna dalam struktur ini.
Sintaks
typedef struct tagPSDA {
DWORD lStructSize;
HWND hwndOwner;
HGLOBAL hDevMode;
HGLOBAL hDevNames;
DWORD Flags;
POINT ptPaperSize;
RECT rtMinMargin;
RECT rtMargin;
HINSTANCE hInstance;
LPARAM lCustData;
LPPAGESETUPHOOK lpfnPageSetupHook;
LPPAGEPAINTHOOK lpfnPagePaintHook;
LPCSTR lpPageSetupTemplateName;
HGLOBAL hPageSetupTemplate;
} PAGESETUPDLGA, *LPPAGESETUPDLGA;
Anggota
lStructSize
Jenis: DWORD
Ukuran, dalam byte, dari struktur ini.
hwndOwner
Jenis: HWND
Handel ke jendela yang memiliki kotak dialog. Anggota ini bisa menjadi handel jendela yang valid, atau bisa NULL jika kotak dialog tidak memiliki pemilik.
hDevMode
Jenis: HGLOBAL
Handel ke objek memori global yang berisi struktur DEVMODE . Pada input, jika handel ditentukan, nilai dalam struktur DEVMODE terkait digunakan untuk menginisialisasi kontrol dalam kotak dialog. Pada output, kotak dialog mengatur hDevMode ke handel memori global ke struktur DEVMODE yang berisi nilai yang menentukan pilihan pengguna. Jika pilihan pengguna tidak tersedia, kotak dialog mengatur hDevMode ke NULL.
hDevNames
Jenis: HGLOBAL
Handel ke objek memori global yang berisi struktur DEVNAMES . Struktur ini berisi tiga string yang menentukan nama driver, nama printer, dan nama port output. Pada input, jika handel ditentukan, string dalam struktur DEVNAMES terkait digunakan untuk menginisialisasi kontrol dalam kotak dialog. Pada output, kotak dialog mengatur hDevNames ke handel memori global ke struktur DEVNAMES yang berisi string yang menentukan pilihan pengguna. Jika pilihan pengguna tidak tersedia, kotak dialog mengatur hDevNames ke NULL.
Flags
Jenis: DWORD
Sekumpulan bendera bit yang bisa Anda gunakan untuk menginisialisasi kotak dialog Penyetelan Halaman . Saat kotak dialog kembali, kotak dialog mengatur bendera ini untuk menunjukkan input pengguna. Anggota ini bisa menjadi satu atau beberapa nilai berikut.
Nilai | Makna |
---|---|
|
Mengatur nilai minimum yang dapat ditentukan pengguna untuk margin halaman menjadi margin minimum yang diizinkan oleh printer. Ini adalah default. Bendera ini diabaikan jika bendera PSD_MARGINS dan PSD_MINMARGINS juga ditentukan. |
|
Menonaktifkan kontrol margin, mencegah pengguna mengatur margin. |
|
Menonaktifkan kontrol orientasi, mencegah pengguna mengatur orientasi halaman. |
|
Mencegah kotak dialog menggambar konten halaman sampel. Jika Anda mengaktifkan prosedur hook PagePaintHook , Anda masih dapat menggambar konten halaman sampel. |
|
Menonaktifkan kontrol kertas, mencegah pengguna mengatur parameter halaman seperti ukuran kertas dan sumber. |
|
Kedaluwarsa.
Windows XP/2000: Menonaktifkan tombol Printer , mencegah pengguna memanggil kotak dialog yang berisi informasi penyetelan printer tambahan. |
|
Mengaktifkan prosedur kait yang ditentukan dalam anggota lpfnPagePaintHook . |
|
Mengaktifkan prosedur kait yang ditentukan dalam anggota lpfnPageSetupHook . |
|
Menunjukkan bahwa anggota hInstance dan lpPageSetupTemplateName menentukan templat kotak dialog untuk digunakan sebagai pengganti templat default. |
|
Menunjukkan bahwa anggota hPageSetupTemplate mengidentifikasi blok data yang berisi templat kotak dialog yang dimuat sebelumnya. Sistem mengabaikan anggota lpPageSetupTemplateName jika bendera ini ditentukan. |
|
Menunjukkan bahwa keseratus milimeter adalah satuan pengukuran untuk margin dan ukuran kertas. Nilai dalam anggota rtMargin, rtMinMargin, dan ptPaperSize berada dalam seperseratus milimeter. Anda dapat mengatur bendera ini pada input untuk mengambil alih unit pengukuran default untuk lokal pengguna. Saat fungsi kembali, kotak dialog mengatur bendera ini untuk menunjukkan unit yang digunakan. |
|
Menunjukkan bahwa seribu inci adalah satuan pengukuran untuk margin dan ukuran kertas. Nilai dalam anggota rtMargin, rtMinMargin, dan ptPaperSize berada dalam seribu inci. Anda dapat mengatur bendera ini pada input untuk mengambil alih unit pengukuran default untuk lokal pengguna. Saat fungsi kembali, kotak dialog mengatur bendera ini untuk menunjukkan unit yang digunakan. |
|
Dicadangkan. |
|
Menyebabkan sistem menggunakan nilai yang ditentukan dalam anggota rtMargin sebagai lebar awal untuk margin kiri, atas, kanan, dan bawah. Jika PSD_MARGINS tidak diatur, sistem mengatur lebar awal ke satu inci untuk semua margin. |
|
Menyebabkan sistem menggunakan nilai yang ditentukan dalam anggota rtMinMargin sebagai lebar minimum yang diizinkan untuk margin kiri, atas, kanan, dan bawah. Sistem mencegah pengguna memasukkan lebar yang kurang dari minimum yang ditentukan. Jika PSD_MINMARGINS tidak ditentukan, sistem akan menyetel lebar minimum yang diperbolehkan untuk yang diizinkan oleh printer. |
|
Menyembunyikan dan menonaktifkan tombol Jaringan . |
|
Mencegah sistem menampilkan pesan peringatan ketika tidak ada pencetak default. |
|
PageSetupDlg tidak menampilkan kotak dialog. Sebaliknya, ini mengatur anggota hDevNames dan hDevMode untuk ditangani ke struktur DEVMODE dan DEVNAMES yang diinisialisasi untuk printer default sistem. PageSetupDlg mengembalikan kesalahan jika hDevNames atau hDevMode bukan NULL. |
|
Menyebabkan kotak dialog menampilkan tombol Bantuan . Anggota hwndOwner harus menentukan jendela untuk menerima pesan terdaftar HELPMSGSTRING yang dikirim kotak dialog saat pengguna mengklik tombol Bantuan . |
ptPaperSize
Jenis: TITIK
Dimensi kertas yang dipilih oleh pengguna. Bendera PSD_INTHOUSANDTHSOFINCHES atau PSD_INHUNDREDTHSOFMILLIMETERS menunjukkan satuan pengukuran.
rtMinMargin
Jenis: RECT
Lebar minimum yang diperbolehkan untuk margin kiri, atas, kanan, dan bawah. Sistem mengabaikan anggota ini jika bendera PSD_MINMARGINS tidak disetel. Nilai-nilai ini harus kurang dari atau sama dengan nilai yang ditentukan dalam anggota rtMargin . Bendera PSD_INTHOUSANDTHSOFINCHES atau PSD_INHUNDREDTHSOFMILLIMETERS menunjukkan satuan pengukuran.
rtMargin
Jenis: RECT
Lebar margin kiri, atas, kanan, dan bawah. Jika Anda mengatur bendera PSD_MARGINS , rtMargin menentukan nilai margin awal. Saat PageSetupDlg kembali, rtMargin berisi lebar margin yang dipilih oleh pengguna. Bendera PSD_INHUNDREDTHSOFMILLIMETERS atau PSD_INTHOUSANDTHSOFINCHES menunjukkan satuan pengukuran.
hInstance
Jenis: HINSTANCE
Jika bendera PSD_ENABLEPAGESETUPTEMPLATE diatur di anggota Bendera , hInstance adalah handel ke instans aplikasi atau modul yang berisi templat kotak dialog yang dinamai oleh anggota lpPageSetupTemplateName .
lCustData
Jenis: LPARAM
Data yang ditentukan aplikasi yang diteruskan sistem ke prosedur kait yang diidentifikasi oleh anggota lpfnPageSetupHook . Ketika sistem mengirim pesan WM_INITDIALOG ke prosedur kait, parameter lParam pesan adalah penunjuk ke struktur PAGESETUPDLG yang ditentukan saat dialog dibuat. Prosedur kait dapat menggunakan pointer ini untuk mendapatkan nilai lCustData .
lpfnPageSetupHook
Jenis: LPPAGESETUPHOOK
Penunjuk ke prosedur hook PageSetupHook yang dapat memproses pesan yang ditujukan untuk kotak dialog. Anggota ini diabaikan kecuali bendera PSD_ENABLEPAGESETUPHOOK diatur di anggota Bendera .
lpfnPagePaintHook
Jenis: LPPAGEPAINTHOOK
Penunjuk ke prosedur hook PagePaintHook yang menerima pesan WM_PSD_* dari kotak dialog setiap kali halaman sampel digambar ulang. Dengan memproses pesan, prosedur kait dapat menyesuaikan tampilan halaman sampel. Anggota ini diabaikan kecuali bendera PSD_ENABLEPAGEPAINTHOOK diatur dalam anggota Bendera .
lpPageSetupTemplateName
Jenis: LPCTSTR
Nama sumber daya templat kotak dialog dalam modul yang diidentifikasi oleh anggota hInstance . Templat ini diganti untuk templat kotak dialog standar. Untuk sumber daya kotak dialog bernomor, lpPageSetupTemplateName bisa menjadi nilai yang dikembalikan oleh makro MAKEINTRESOURCE . Anggota ini diabaikan kecuali bendera PSD_ENABLEPAGESETUPTEMPLATE diatur di anggota Bendera .
hPageSetupTemplate
Jenis: HGLOBAL
Jika bendera PSD_ENABLEPAGESETUPTEMPLATEHANDLE diatur di anggota Bendera , hPageSetupTemplate adalah handel ke objek memori yang berisi templat kotak dialog.
Keterangan
Jika bendera PSD_INHUNDREDTHSOFMILLIMETERS dan PSD_INTHOUSANDTHSOFINCHES tidak ditentukan, sistem meminta nilai LOCALE_IMEASURE lokal pengguna default untuk menentukan satuan ukuran (seratus milimeter atau sepersekian inci) untuk lebar margin dan ukuran kertas.
Jika hDevNames dan hDevMode memiliki handel yang valid dan nama printer yang ditentukan oleh anggota wDeviceOffset dari struktur DEVNAMES tidak sama dengan nama yang ditentukan oleh anggota dmDeviceName dari struktur DEVMODE , sistem menggunakan nama yang ditentukan oleh wDeviceOffset secara default.
Catatan
Header commdlg.h mendefinisikan PAGESETUPDLG 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 | commdlg.h (sertakan Windows.h) |
Lihat juga
Konseptual
Sumber Daya Lain
Referensi