[Это предварительный документации и темы для изменения].
PrintDlgEx функция вызывает метод HandleMessage для предоставления возможности для обработки сообщений, отправленных в диалоговое окно ребенка в нижней части общей страницы печати окна свойствприложения. Ребенок диалоговое окно содержит элементы управления, аналогичные тем, которые диалогового окна Печать.
() HRESULT HandleMessage HWNDhDlg,UINTuMsg,WPARAMwParam,LPARAMlParam,LRESULT* pResult);
Если параметр uMsg указывает сообщение WM_INITDIALOG , lParam является указателем на структуру PRINTDLGEX , содержащие значения, указанные при создании окна свойств.
Возвращает S_OK, если реализация HandleMessage обработанное сообщение. В этом случае функция PrintDlgEx не выполняет какой-либо обработки сообщения по умолчанию.
Возвращает S_FALSE, если вы хотите PrintDlgEx для выполнения его обработки сообщения по умолчанию.
Для сообщений уведомления, принятого WM_NOTIFY сообщение, необходимо использовать функцию SetWindowLong с DWL_MSGRESULT значением для задания возвращаемого значения. При вызове SetWindowLong, используйте GetParent (hDlg) для задания значения DWL_MSGRESULT общей странице, которая является родительской дочернего окна.
Процедуру диалогового окна по умолчанию для дочернего окна в нижней части страницы Общие обрабатывает сообщение WM_INITDIALOG перед его передачей в метод HandleMessage . Для всех других сообщений, отправленных в дочернее окно HandleMessage сначала получает сообщение. Затем HandleMessage возвращаемое значение определяет ли по умолчанию процедура диалогового окна обрабатывает сообщение или игнорирует его.
Если HandleMessage обрабатывает сообщение WM_CTLCOLORDLG , он должен возвращать дескриптор действительный кисти для покраски фон диалогового окна. В общем если HandleMessage обрабатывает сообщения WM_CTLCOLOR, он должен возвращать дескриптор действительный кисти для рисования фона указанного элемента управления.
Не следует вызывать функцию EndDialog из метода HandleMessage . Вместо этого HandleMessage может вызывать функцию PostMessage для WM_COMMAND сообщение с IDABORT значением процедуру диалогового окна. Размещение IDABORT закрывает окно свойств печати и вызывает PrintDlgEx для возвращения PD_RESULT_CANCEL в dwResultAction член PRINTDLGEX структуры. Если вам нужно знать, почему HandleMessage закрытия диалогового окна, необходимо предоставить собственные механизмы связи между методом HandleMessage и приложение.
Вы можете подкласса в нижней части общей страницы поле стандартных элементов управления диалогового окна ребенка. Эти стандартные элементы управления, аналогичные тем, которые содержатся в диалоговом окне Печать . Однако процедуру диалогового окна по умолчанию также могут подкласс элементы управления. Таким образом вам следует подклассов элементов управления при HandleMessage обрабатывает сообщение WM_INITDIALOG . Это гарантирует, что подкласс процедура получает сообщения конкретного элемента управления до подкласс процедуры, установленные процедуру диалогового окна.
nbsp; Windows &NT: требует версии 5.0 или более поздней.
Windows:Не поддерживается.
Windows CE:Не поддерживается.
Заголовок:В commdlg.h.
Общие диалогового окна Обзор библиотеки, IPrintDialogCallback, EndDialog, PostMessage, PrintDlgEx, PRINTDLGEX, SetWindowLong, WM_COMMAND, WM_CTLCOLORDLG, WM_INITDIALOG, WM_NOTIFY