Struktur PRINTDLGW (commdlg.h)
Berisi informasi yang digunakan fungsi printDlg
Sintaksis
typedef struct tagPDW {
DWORD lStructSize;
HWND hwndOwner;
HGLOBAL hDevMode;
HGLOBAL hDevNames;
HDC hDC;
DWORD Flags;
WORD nFromPage;
WORD nToPage;
WORD nMinPage;
WORD nMaxPage;
WORD nCopies;
HINSTANCE hInstance;
LPARAM lCustData;
LPPRINTHOOKPROC lpfnPrintHook;
LPSETUPHOOKPROC lpfnSetupHook;
LPCWSTR lpPrintTemplateName;
LPCWSTR lpSetupTemplateName;
HGLOBAL hPrintTemplate;
HGLOBAL hSetupTemplate;
} PRINTDLGW, *LPPRINTDLGW;
Anggota
lStructSize
Jenis: DWORD
Ukuran struktur, dalam byte.
hwndOwner
Jenis: HWND
Handel ke jendela yang memiliki kotak dialog. Anggota ini bisa menjadi handel jendela yang valid, atau dapat null jika kotak dialog tidak memiliki pemilik.
hDevMode
Jenis: HGLOBAL
Handel ke objek memori global yang dapat bergerak yang berisi struktur DEVMODE
Jika
Jika pengandar perangkat untuk pencetak yang ditentukan tidak mendukung mode perangkat yang diperluas, hDevMode NULL ketika PrintDlg kembali.
Jika nama perangkat (ditentukan oleh
Untuk informasi selengkapnya tentang
hDevNames
Jenis: HGLOBAL
Handel ke objek memori global yang dapat bergerak yang berisi struktur DEVNAMES
Anggota
Untuk informasi selengkapnya tentang
hDC
Jenis: HDC
Handel ke konteks perangkat atau konteks informasi, tergantung pada apakah anggota Bendera
Flags
Jenis: DWORD
Menginisialisasi kotak dialog Cetak
Nilai | Arti |
---|---|
|
Bendera default yang menunjukkan bahwa tombol radio Semua awalnya dipilih. Bendera ini digunakan sebagai tempat penampung untuk menunjukkan bahwa bendera PD_PAGENUMS dan PD_SELECTION tidak ditentukan. |
|
Jika bendera ini diatur, kotak centang Susun dipilih.
Jika bendera ini diatur ketika fungsi PrintDlg kembali, aplikasi harus mensimulasikan kolase beberapa salinan. Untuk informasi selengkapnya, lihat deskripsi bendera PD_USEDEVMODECOPIESANDCOLLATE. Lihat PD_NOPAGENUMS. |
|
Menonaktifkan kotak centang Cetak ke File. |
|
Mengaktifkan prosedur kait yang ditentukan dalam anggota |
|
Menunjukkan bahwa hInstance |
|
Menunjukkan bahwa anggota |
|
Mengaktifkan prosedur kait yang ditentukan dalam anggota |
|
Menunjukkan bahwa hInstance dan lpSetupTemplateName anggota menentukan pengganti templat kotak dialog Penyetelan Cetak default. |
|
Menunjukkan bahwa anggota |
|
Sembunyikan kotak centang Cetak ke File. |
|
Menyembunyikan dan menonaktifkan tombol Jaringan |
|
Menonaktifkan tombol radio Halaman |
|
Menonaktifkan tombol radio Pilihan |
|
Mencegah pesan peringatan ditampilkan ketika tidak ada pencetak default. |
|
Jika bendera ini diatur, tombol radio Pages dipilih. Jika bendera ini diatur saat fungsi |
|
Menyebabkan sistem menampilkan kotak dialog Penyetelan Cetak |
|
Jika bendera ini diatur, kotak centang Cetak ke File dipilih. Jika bendera ini diatur ketika fungsi |
|
Menyebabkan PrintDlg mengembalikan konteks perangkat yang cocok dengan pilihan yang dibuat pengguna dalam kotak dialog. Konteks perangkat dikembalikan dalam hDC. |
|
Jika bendera ini diatur, fungsi PrintDlg tidak menampilkan kotak dialog. Sebaliknya, ini mengatur hDevNames dan hDevMode anggota untuk ditangani ke devmode dan DEVNAMES struktur yang diinisialisasi untuk printer default sistem. Baik hDevNames dan hDevMode harus NULL, atau PrintDlg mengembalikan kesalahan. |
|
Mirip dengan bendera PD_RETURNDC, kecuali bendera ini mengembalikan konteks informasi daripada konteks perangkat. Jika tidak ada PD_RETURNDC atau PD_RETURNIC yang ditentukan, hDC tidak ditentukan pada output. |
|
Jika bendera ini diatur, tombol radio Pilihan |
|
Menyebabkan kotak dialog menampilkan tombol Bantuan |
|
Sama seperti PD_USEDEVMODECOPIESANDCOLLATE. |
|
Bendera ini menunjukkan apakah aplikasi Anda mendukung beberapa salinan dan kolatasi. Atur bendera ini pada input untuk menunjukkan bahwa aplikasi Anda tidak mendukung beberapa salinan dan kolase. Dalam hal ini, Jika bendera ini tidak diatur, aplikasi bertanggung jawab untuk mencetak dan menyusun beberapa salinan. Dalam hal ini, Terlepas dari apakah bendera ini diatur, aplikasi dapat menentukan dari nCopies dan PD_COLLATE berapa banyak salinan yang akan dirender dan apakah akan mencetaknya disatukan. Jika bendera ini diatur dan pengandar pencetak tidak mendukung beberapa salinan, Salinan kontrol edit dinonaktifkan. Demikian pula, jika bendera ini diatur dan driver printer tidak mendukung kolase, kotak centang Collate dinonaktifkan. Masalah yang diketahui pada Windows 2000/XP/2003: Jika bendera ini tidak diatur sebelum memanggil PrintDlg, PrintDlg mungkin menukar nCopies dan nilai dmCopies saat kembali. Solusi untuk masalah ini digunakan dmCopies jika nilainya lebih besar dari 1, atau, gunakan nCopies, agar Anda mendapatkan jumlah salinan aktual yang akan dicetak saat PrintDlg kembali. |
Untuk memastikan bahwa PrintDlg
Untuk memastikan bahwa PrintDlg atau PrintDlgEx mengembalikan nilai yang benar di nCopies dan PD_COLLATE, atur PD_RETURNDC = TRUE dan PD_USEDEVMODECOPIESANDCOLLATE = FALSE. Dengan demikian, dmCopies
Pada Windows Vista dan Windows 7, saat Anda memanggil
Saat melakukan panggilan ke GDI, Anda harus mengabaikan nilai nCopies, pertimbangkan nilai sebagai 1, dan menggunakan hDC yang dikembalikan untuk menghindari pencetakan salinan duplikat.
nFromPage
Jenis: WORD
Nilai awal untuk kontrol edit halaman awal.
Saat PrintDlg kembali, nFromPage adalah halaman awal yang ditentukan oleh pengguna. Jika tombol radio Pages dipilih saat pengguna mengklik tombol Okay, PrintDlg mengatur bendera PD_PAGENUMS dan tidak kembali hingga pengguna memasukkan nilai halaman awal yang berada dalam rentang halaman minimum hingga maksimum.
Jika nilai input untuk nFromPage atau nToPage berada di luar rentang minimum/maksimum, PrintDlg mengembalikan kesalahan hanya jika bendera PD_PAGENUMS ditentukan; jika tidak, kotak dialog menampilkan kotak dialog tetapi mengubah nilai di luar rentang menjadi nilai minimum atau maksimum.
nToPage
Jenis: WORD
Nilai awal untuk kontrol edit halaman akhir. Saat PrintDlg kembali, nToPage adalah halaman akhir yang ditentukan oleh pengguna. Jika tombol radio Halaman
nMinPage
Jenis: WORD
Nilai minimum untuk rentang halaman yang ditentukan dalam kontrol edit halaman Dari dan Ke. Jika
nMaxPage
Jenis: WORD
Nilai maksimum untuk rentang halaman yang ditentukan dalam kontrol edit halaman Dari dan Ke.
nCopies
Jenis: WORD
Jumlah awal salinan untuk
hInstance
Jenis: HINSTANCE
Jika bendera
lCustData
Jenis: LPARAM
Data yang ditentukan aplikasi yang diteruskan sistem ke prosedur kait yang diidentifikasi oleh
lpfnPrintHook
Jenis: LPPRINTHOOKPROC
Penunjuk ke prosedur hook PrintHookProc
lpfnSetupHook
Jenis: LPSETUPHOOKPROC
Penunjuk ke prosedur hook SetupHookProc
lpPrintTemplateName
Jenis:
Nama sumber daya templat kotak dialog dalam modul yang diidentifikasi oleh hInstance anggota. Templat ini menggantikan templat kotak dialog Cetak default. Anggota ini diabaikan kecuali bendera
lpSetupTemplateName
Jenis:
Nama sumber daya templat kotak dialog dalam modul yang diidentifikasi oleh hInstance anggota. Templat ini menggantikan templat kotak dialog Penyetelan Cetak
hPrintTemplate
Jenis: HGLOBAL
Jika bendera
hSetupTemplate
Jenis: HGLOBAL
Jika bendera
Komentar
Jika
Perhatikan bahwa
Jika bendera PD_RETURNDEFAULT diatur dan hDevMode dan hDevNamesNULL, PrintDlg menggunakan hDevNames dan hDevMode anggota untuk mengembalikan informasi tentang printer default saat ini tanpa menampilkan kotak dialog.
Nota
Header commdlg.h mendefinisikan PRINTDLG 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
Syarat | Nilai |
---|---|
klien minimum yang didukung | Windows 2000 Professional [hanya aplikasi desktop] |
server minimum yang didukung |
Windows 2000 Server [hanya aplikasi desktop] |
Header |
commdlg.h (termasuk Windows.h) |
Lihat juga
Pustaka Kotak Dialog Umum
Konseptual
DEVNAMES
PrintDlg
Referensi