IPrintDialogCallback::HandleMessage

[Это предварительный документации и темы для изменения].

PrintDlgEx функция вызывает метод HandleMessage для предоставления возможности для обработки сообщений, отправленных в диалоговое окно ребенка в нижней части общей страницы печати окна свойствприложения. Ребенок диалоговое окно содержит элементы управления, аналогичные тем, которые диалогового окна Печать.

() HRESULT HandleMessage HWNDhDlg,UINTuMsg,WPARAMwParam,LPARAMlParam,LRESULT* pResult);
 

Параметры

hDlg
Дескриптор диалоговое окно ребенка в нижней части страницы Общие.
uMsg
Идентифицирует сообщение.
wParam
Задает дополнительную информацию о сообщении. Точное значение зависит от значения параметра uMsg.
lParam
Задает дополнительную информацию о сообщении. Точное значение зависит от значения параметра uMsg.

Если параметр uMsg указывает сообщение WM_INITDIALOG , lParam является указателем на структуру PRINTDLGEX , содержащие значения, указанные при создании окна свойств.

pResult
Указатель на переменную, следует задать для обозначения результат возвращается диалоговым окном для сообщения.

Возвращаемые значения

Возвращает 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 . Это гарантирует, что подкласс процедура получает сообщения конкретного элемента управления до подкласс процедуры, установленные процедуру диалогового окна.

QuickInfo

nbsp; Windows &NT: требует версии 5.0 или более поздней.
Windows:Не поддерживается.
Windows CE:Не поддерживается.
Заголовок:В commdlg.h.

Родственные слова

Общие диалогового окна Обзор библиотеки, IPrintDialogCallback, EndDialog, PostMessage, PrintDlgEx, PRINTDLGEX, SetWindowLong, WM_COMMAND, WM_CTLCOLORDLG, WM_INITDIALOG, WM_NOTIFY

Index