使用打印对话框和检索打印机设备背景

【勇芳软件工作室】汉化HomePreviousNext

打印的第一步包括设置打印机并获取打印机DC。在示例应用程序中,“文件”菜单包含两个选项:打印和打印设置。通过选择任一选项,用户可以配置打印机。当用户选择“打印设置”选项时,将显示“打印设置”对话框,用户可以选择打印机,页面方向,纸张尺寸等。当用户选择“打印”选项时,将显示“打印”对话框,用户可以选择一系列页面,打印质量,多份副本等。用户还可以通过单击设置按钮显示“打印设置”对话框。

打印和打印设置对话框将通过初始化PRINTDLG结构的成员并调用PrintDlg功能来显示。(有关显示打印设置对话框的详细信息,请参阅通用对话框库)。除了检索用户指定的数据,PrintDlg可以通过在PRINTDLG结构的成员中指定PD_RETURNDC值来获取打印机DC。以下代码示例显示如何初始化结构的成员并显示“打印”对话框。

/ *初始化PRINTDLG成员。*/

pd.lStructSize = sizeof(PRINTDLG);

pd.hDevMode = (HANDLE) NULL;

pd.hDevNames = (HANDLE) NULL;

pd.Flags = PD_RETURNDC;

pd.hwndOwner = hwnd;

pd.hDC = (HDC) NULL;

pd.nFromPage = 1;

pd.nToPage = 1;

pd.nMinPage = 0;

pd.nMaxPage = 0;

pd.nCopies = 1;

pd.hInstance = (HANDLE) NULL;

pd.lCustData = 0L;

pd.lpfnPrintHook = (LPPRINTHOOKPROC) NULL;

pd.lpfnSetupHook = (LPSETUPHOOKPROC) NULL;

pd.lpPrintTemplateName = (LPSTR) NULL;

pd.lpSetupTemplateName = (LPSTR) NULL;

pd.hPrintTemplate = (HANDLE) NULL;

pd.hSetupTemplate = (HANDLE) NULL;

/ *显示打印对话框。*/

PrintDlg(&pd);