Using a Print Dialog Box and Retrieving a Printer Device Context
The first step in printing involves setting up the printer and obtaining a
printer DC. In the sample application, the File menu contains two options, Print
and Print Setup. By selecting either option, the user can configure the printer.
When the user selects the Print Setup option, the Print Setup dialog box is
displayed and the user can select a printer, a page orientation, a paper size,
and so on. When the user selects the Print option, the Print dialog box is
displayed and the user can select a range of pages, a print quality, a number of
copies, and so on. The user can also display the Print Setup dialog box by clicking
the Setup push button.
The Print and Print Setup dialog boxes are both displayed by initializing the
members of a
PRINTDLG structure and calling the
PrintDlg function. (For more information about displaying the Print Setup dialog box,
see
Common Dialog Box Library). In addition to retrieving user-specified data,
PrintDlg can be used to obtain a printer DC by specifying the PD_RETURNDC value in the
Flags member of the
PRINTDLG structure. The following code sample shows how to intialize the members of
the structure and to display the Print dialog box.
/* Initialize the PRINTDLG members. */
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;
/* Display the PRINT dialog box. */
PrintDlg(&pd);
- Software for developers
-
Delphi Components
.Net Components
Software for Android Developers
- More information resources
-
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
- Databases for Amazon shops developers
-
Amazon Categories Database
Browse Nodes Database