Bagikan melalui


Kelas CPrintDialogEx

Merangkum layanan yang disediakan oleh lembar properti Windows Print.

Sintaks

class CPrintDialogEx : public CCommonDialog

Anggota

Konstruktor Publik

Nama Deskripsi
CPrintDialogEx::CPrintDialogEx Membuat CPrintDialogEx objek.

Metode Publik

Nama Deskripsi
CPrintDialogEx::CreatePrinterDC Membuat konteks perangkat printer tanpa menampilkan kotak dialog Cetak.
CPrintDialogEx::D oModal Menampilkan kotak dialog dan memperbolehkan pengguna membuat pilihan.
CPrintDialogEx::GetCopies Mengambil jumlah salinan yang diminta.
CPrintDialogEx::GetDefaults Mengambil default perangkat tanpa menampilkan kotak dialog.
CPrintDialogEx::GetDeviceName Mengambil nama perangkat pencetak yang saat ini dipilih.
CPrintDialogEx::GetdevMode Mengambil DEVMODE struktur.
CPrintDialogEx::GetDriverName Mengambil nama pengandar perangkat printer yang ditentukan sistem.
CPrintDialogEx::GetPortName Mengambil nama porta pencetak yang saat ini dipilih.
CPrintDialogEx::GetPrinterDC Mengambil handel ke konteks perangkat printer.
CPrintDialogEx::P rintAll Menentukan apakah akan mencetak semua halaman dokumen.
CPrintDialogEx::P rintCollate Menentukan apakah salinan yang disusun diminta.
CPrintDialogEx::P rintCurrentPage Menentukan apakah akan mencetak halaman dokumen saat ini.
CPrintDialogEx::P rintRange Menentukan apakah hanya mencetak rentang halaman tertentu.
CPrintDialogEx::P rintSelection Menentukan apakah hanya mencetak item terpilih saat ini.

Anggota Data Publik

Nama Deskripsi
CPrintDialogEx::m_pdex Struktur yang CPrintDialogEx digunakan untuk menyesuaikan objek.

Keterangan

Anda dapat mengandalkan kerangka kerja untuk menangani banyak aspek proses pencetakan untuk aplikasi Anda. Untuk informasi selengkapnya tentang menggunakan kerangka kerja untuk menangani tugas pencetakan, lihat artikel Mencetak.

Jika Anda ingin aplikasi Anda menangani pencetakan tanpa keterlibatan kerangka kerja, Anda dapat menggunakan CPrintDialogEx kelas "apa adanya" dengan konstruktor yang disediakan, atau Anda dapat memperoleh kelas dialog Anda sendiri dari CPrintDialogEx dan menulis konstruktor agar sesuai dengan kebutuhan Anda. Dalam kedua kasus, kotak dialog ini akan berperilaku seperti kotak dialog MFC standar karena berasal dari kelas CCommonDialog.

Untuk menggunakan CPrintDialogEx objek, pertama-tama buat objek menggunakan CPrintDialogEx konstruktor. Setelah kotak dialog dibuat, Anda dapat mengatur atau mengubah nilai apa pun dalam struktur m_pdex untuk menginisialisasi nilai kontrol kotak dialog. Strukturnya m_pdex berjenis PRINTDLGEX. Untuk informasi selengkapnya tentang struktur ini, lihat Windows SDK.

Jika Anda tidak menyediakan handel m_pdex Anda sendiri untuk hDevMode anggota dan hDevNames , pastikan untuk memanggil fungsi GlobalFree Windows untuk handel ini ketika Anda selesai dengan kotak dialog.

Setelah menginisialisasi kontrol kotak dialog, panggil DoModal fungsi anggota untuk menampilkan kotak dialog dan izinkan pengguna untuk memilih opsi cetak. Saat DoModal kembali, Anda dapat menentukan apakah pengguna memilih tombol OK, Terapkan, atau Batal.

Jika pengguna menekan OK, Anda dapat menggunakan CPrintDialogExfungsi anggota untuk mengambil input informasi oleh pengguna.

Fungsi CPrintDialogEx::GetDefaults anggota berguna untuk mengambil default printer saat ini tanpa menampilkan kotak dialog. Metode ini tidak memerlukan interaksi pengguna.

Anda dapat menggunakan fungsi Windows CommDlgExtendedError untuk menentukan apakah terjadi kesalahan selama inisialisasi kotak dialog dan untuk mempelajari selengkapnya tentang kesalahan tersebut. Untuk informasi selengkapnya tentang fungsi ini, lihat Windows SDK.

Untuk informasi selengkapnya tentang menggunakan CPrintDialogEx, lihat Kelas Dialog Umum.

Hierarki Warisan

CObject

CCmdTarget

CWnd

CDialog

IObjectWithSite

IPrintDialogCallback

CCommonDialog

CPrintDialogEx

Persyaratan

Header: afxdlgs.h

CPrintDialogEx::CPrintDialogEx

Membuat lembar properti Windows Print.

CPrintDialogEx(
    DWORD dwFlags = PD_ALLPAGES | PD_USEDEVMODECOPIES | PD_NOPAGENUMS       | PD_HIDEPRINTTOFILE | PD_NOSELECTION | PD_NOCURRENTPAGE,
    CWnd* pParentWnd = NULL);

Parameter

dwFlags
Satu atau beberapa bendera yang dapat Anda gunakan untuk menyesuaikan pengaturan kotak dialog, dikombinasikan menggunakan operator OR bitwise. Misalnya, bendera PD_ALLPAGES mengatur rentang cetak default ke semua halaman dokumen. Lihat struktur PRINTDLGEX di Windows SDK untuk informasi selengkapnya tentang bendera ini.

pParentWnd
Penunjuk ke jendela induk atau pemilik kotak dialog.

Keterangan

Fungsi anggota ini hanya membuat objek. DoModal Gunakan fungsi anggota untuk menampilkan kotak dialog.

CPrintDialogEx::CreatePrinterDC

Membuat konteks perangkat printer (DC) dari struktur DEVMODE dan DEVNAMES .

HDC CreatePrinterDC();

Tampilkan Nilai

Tangani ke konteks perangkat printer yang baru dibuat.

Keterangan

DC yang dikembalikan juga disimpan dalam hDC anggota m_pdex.

DC ini diasumsikan sebagai DC printer saat ini, dan DC printer lain yang diperoleh sebelumnya harus dihapus. Fungsi ini dapat dipanggil, dan DC yang dihasilkan digunakan, tanpa pernah menampilkan kotak dialog Cetak.

CPrintDialogEx::D oModal

Panggil fungsi ini untuk menampilkan lembar properti Cetak Windows dan perbolehkan pengguna memilih berbagai opsi pencetakan seperti jumlah salinan, rentang halaman, dan apakah salinan harus disatukan.

virtual INT_PTR DoModal();

Tampilkan Nilai

Nilai pengembalian INT_PTR sebenarnya adalah HRESULT. Lihat bagian Mengembalikan Nilai di PrintDlgEx di Windows SDK.

Keterangan

Jika Anda ingin menginisialisasi berbagai opsi dialog cetak dengan mengatur anggota m_pdex struktur, Anda harus melakukan ini sebelum memanggil DoModal, tetapi setelah objek dialog dibangun.

Setelah memanggil DoModal, Anda dapat memanggil fungsi anggota lain untuk mengambil pengaturan atau input informasi oleh pengguna ke dalam kotak dialog.

Jika bendera PD_RETURNDC digunakan saat memanggil DoModal, DC printer akan dikembalikan dalam hDC anggota m_pdex. DC ini harus dibebaskan dengan panggilan ke DeleteDC oleh pemanggil CPrintDialogEx.

CPrintDialogEx::GetCopies

Panggil fungsi ini setelah memanggil DoModal untuk mengambil jumlah salinan yang diminta.

int GetCopies() const;

Tampilkan Nilai

Jumlah salinan yang diminta.

CPrintDialogEx::GetDefaults

Panggil fungsi ini untuk mengambil default perangkat dari printer default tanpa menampilkan kotak dialog.

BOOL GetDefaults();

Tampilkan Nilai

TRUE jika berhasil, jika tidak FALSE.

Keterangan

Membuat konteks perangkat printer (DC) dari struktur DEVMODE dan DEVNAMES .

GetDefaults tidak menampilkan lembar properti Cetak. Sebaliknya, ini mengatur hDevNames anggota dan hDevMode m_pdex untuk menangani ke struktur DEVMODE dan DEVNAMES yang diinisialisasi untuk printer default sistem. Keduanya hDevNames dan hDevMode harus NULL, atau GetDefaults gagal.

Jika bendera PD_RETURNDC diatur, fungsi ini tidak hanya akan kembali hDevNames dan hDevMode (terletak di m_pdex.hDevNames dan m_pdex.hDevMode) ke pemanggil, tetapi juga akan mengembalikan DC printer di m_pdex.hDC. Pemanggil bertanggung jawab untuk menghapus DC printer dan memanggil fungsi Windows GlobalFree pada handel ketika Anda selesai dengan CPrintDialogEx objek.

CPrintDialogEx::GetDeviceName

Panggil fungsi ini setelah memanggil DoModal untuk mengambil nama printer yang saat ini dipilih, atau setelah memanggil GetDefaults untuk mengambil nama printer default.

CString GetDeviceName() const;

Tampilkan Nilai

Nama pencetak terpilih saat ini.

Keterangan

Gunakan penunjuk ke objek yang CString dikembalikan oleh GetDeviceName sebagai nilai lpszDeviceName dalam panggilan ke CDC::CreateDC.

CPrintDialogEx::GetdevMode

Panggil fungsi ini setelah memanggil DoModal atau GetDefaults untuk mengambil informasi tentang perangkat pencetakan.

LPDEVMODE GetDevMode() const;

Tampilkan Nilai

Struktur data DEVMODE , yang berisi informasi tentang inisialisasi perangkat dan lingkungan driver cetak. Anda harus membuka kunci memori yang diambil oleh struktur ini dengan fungsi Windows GlobalUnlock , yang dijelaskan dalam Windows SDK.

CPrintDialogEx::GetDriverName

Panggil fungsi ini setelah memanggil DoModal atau GetDefaults untuk mengambil nama driver perangkat printer yang ditentukan sistem.

CString GetDriverName() const;

Tampilkan Nilai

Menentukan CString nama driver yang ditentukan sistem.

Keterangan

Gunakan penunjuk ke objek yang CString dikembalikan oleh GetDriverName sebagai nilai lpszDriverName dalam panggilan ke CDC::CreateDC.

CPrintDialogEx::GetPortName

Panggil fungsi ini setelah memanggil DoModal atau GetDefaults untuk mengambil nama port printer yang saat ini dipilih.

CString GetPortName() const;

Tampilkan Nilai

Nama porta pencetak yang saat ini dipilih.

CPrintDialogEx::GetPrinterDC

Mengembalikan handel ke konteks perangkat printer.

HDC GetPrinterDC() const;

Tampilkan Nilai

Handel ke konteks perangkat printer.

Keterangan

Anda harus memanggil fungsi Windows DeleteDC untuk menghapus konteks perangkat ketika Anda selesai menggunakannya.

CPrintDialogEx::m_pdex

Struktur PRINTDLGEX yang anggotanya menyimpan karakteristik objek dialog.

PRINTDLGEX m_pdex;

Keterangan

Setelah membuat CPrintDialogEx objek, Anda dapat menggunakan m_pdex untuk mengatur berbagai aspek kotak dialog sebelum memanggil fungsi anggota DoModal . Untuk informasi selengkapnya tentang m_pdex struktur, lihat PRINTDLGEX di Windows SDK.

Jika Anda memodifikasi anggota data secara m_pdex langsung, Anda akan mengambil alih perilaku default apa pun.

CPrintDialogEx::P rintAll

Panggil fungsi ini setelah memanggil DoModal untuk menentukan apakah akan mencetak semua halaman dalam dokumen.

BOOL PrintAll() const;

Tampilkan Nilai

TRUE jika semua halaman dalam dokumen akan dicetak; jika tidak FALSE.

CPrintDialogEx::P rintCollate

Panggil fungsi ini setelah memanggil DoModal untuk menentukan apakah printer harus menyusun semua salinan dokumen yang dicetak.

BOOL PrintCollate() const;

Tampilkan Nilai

TRUE jika pengguna memilih kotak centang susun dalam kotak dialog; jika tidak FALSE.

CPrintDialogEx::P rintCurrentPage

Panggil fungsi ini setelah memanggil DoModal untuk menentukan apakah akan mencetak halaman saat ini dalam dokumen.

BOOL PrintCurrentPage() const;

Tampilkan Nilai

TRUE jika Cetak Halaman Saat Ini dipilih dalam dialog cetak; jika tidak FALSE.

CPrintDialogEx::P rintRange

Panggil fungsi ini setelah memanggil DoModal untuk menentukan apakah hanya mencetak rentang halaman dalam dokumen.

BOOL PrintRange() const;

Tampilkan Nilai

TRUE jika hanya rentang halaman dalam dokumen yang akan dicetak; jika tidak FALSE.

Keterangan

Rentang halaman yang ditentukan dapat ditentukan dari m_pdex (lihat nPageRanges, , nMaxPageRangesdan lpPageRanges dalam struktur PRINTDLGEX di Windows SDK).

CPrintDialogEx::P rintSelection

Panggil fungsi ini setelah memanggil DoModal untuk menentukan apakah hanya mencetak item yang saat ini dipilih.

BOOL PrintSelection() const;

Tampilkan Nilai

TRUE jika hanya item terpilih yang akan dicetak; jika tidak FALSE.

Lihat juga

Kelas CCommonDialog
Bagan Hierarki
Struktur CPrintInfo