typedef struct tagPDEXA {
DWORD lStructSize;
HWND hwndOwner;
HGLOBAL hDevMode;
HGLOBAL hDevNames;
HDC hDC;
DWORD Flags;
DWORD Flags2;
DWORD ExclusionFlags;
DWORD nPageRanges;
DWORD nMaxPageRanges;
PPAGESETUPDLGW lpPageRanges;
DWORD nMinPage;
DWORD nMaxPage;
DWORD nCopies;
HINSTANCE hInstance;
LPCWSTR lpPrintTemplateName;
LPUNKNOWN lpCallback;
DWORD nPropertyPages;
HPROPSHEETPAGE *lphPropertyPages;
DWORD_PTR nStartPage;
DWORD_PTR dwResultAction;
HANDLE hResult;
LPCWSTR lCustData;
PFNPROPSHEETCALLBACK lpfnSetupPage;
LPCWSTR lpfnPageSetupHook;
LPCWSTR lpfnPagePaintHook;
LPCWSTR lpPageSetupTemplateName;
HGLOBAL hPageSetupTemplate;
} PRINTDLGEXW, *LPPRINTDLGEXW;
下面是一些关键字段的解释:
- lStructSize: 结构的大小,以字节为单位。
- hwndOwner: 拥有对话框的窗口句柄。
- hDevMode: 用于传递或接收有关打印机的信息的全局内存句柄。
- hDevNames: 用于传递或接收与设备相关的信息的全局内存句柄。
- hDC: 用于在打印对话框中初始化打印机设置的设备上下文句柄。
- Flags: 控制对话框的外观和行为的标志。
- nPageRanges: 页面范围数组的元素数。
- nMinPage, nMaxPage: 用户可以输入的页码范围。
- nCopies: 打印份数。
- lpPageRanges: 指向 PAGESETUPDLGW 结构的指针,用于指定允许打印的页面范围。
此结构的使用通常涉及到创建一个 PRINTDLGEXW 结构,将所需的信息填充到结构的字段中,然后将其传递给 PrintDlgExW 函数以显示打印对话框。
转载请注明出处:http://www.zyzy.cn/article/detail/25037/Win32 API/Commdlg.h/PRINTDLGEXW