Страница 17 из 59
Фильтр - процедура PagePaintHook Фильтр - процедура PagePaintHook - определяемая программой или определенная библиотекой процедура повторного вызова, которая используется диалоговым окном Параметры страницы (Page Setup). Фильтр - процедура принимает сообщения, которые позволяют вам настраивать рисунок макета страницы в диалоговом окне Параметры страницы (Page Setup). Синтаксис UINT APIENTRY PagePaintHook ( HWND hdlg,// дескриптор окна блока диалога UINT uiMsg,// идентификатор сообщения WPARAM wParam,// параметр сообщения LPARAM lParam // параметр сообщения );
Параметры hdlg Дескриптор окна блока диалога Параметры страницы (Page Setup). uiMsg Идентифицирует принимаемое сообщение. wParam Определяет дополнительную информацию о сообщении. Точное значение зависит от значения параметра uiMsg. lParam Определяет дополнительную информацию о сообщении. Точное значение зависит от значения параметра uiMsg. Возвращаемые значения Если фильтр - процедура возвращает значение ИСТИНА (TRUE) для любого из первых трех сообщений (WM_PSD_PAGESETUPDLG, WM_PSD_FULLPAGERECT или WM_PSD_MINMARGINRECT) в порядке следования прорисовки, то диалоговое окно не передает больше сообщений и не рисует в макете страницы до тех пор, пока в следующий раз системе не потребуется перерисовать макет страницы. Если фильтр - процедура возвращает значение ЛОЖЬ (FALSE) для всех трех сообщений, диалоговое окно передает остающиеся сообщения в порядке следования прорисовки. Если фильтр - процедура возвращает значение ИСТИНА (TRUE) для любого из остающихся сообщений в порядке следования прорисовки, диалоговое окно не рисует соответствующую часть макета страницы. Если фильтр - процедура возвращает ЛОЖЬ (FALSE) для любого из этих сообщений, диалоговое окно рисует эту часть макета страницы. Замечания Диалоговое окно Параметры страницы (Page Setup) включает в себя изображение макета страницы, который показывает, как выбор пользователя воздействует на вид печати выводимых данных. Изображение состоит из прямоугольника, который представляет собой выбранный тип листа бумаги или конверта, с пунктирным прямоугольником, представляющим собой текущие поля и неполные (греческий текст) символы, чтобы показать, как смотрится текст на напечатанной странице. Когда вы используете функцию PageSetupDlg, чтобы создать диалоговое окно Параметры страницы (Page Setup), вы можете предоставить фильтр - процедуру PagePaintHook, чтобы настроить вид макета страницы. Чтобы разрешить действие фильтр - процедуры, используйте структуру PAGESETUPDLG, которую вы передали в функцию создавшую диалоговое окно. Установите указатель на фильтр - процедуру в элементе lpfnPagePaintHook, а в элементе Flags установите флажок PSD_ENABLEPAGEPAINTHOOK. Всякий раз, когда диалоговое окно собирается делать прорисовку содержания макета страницы, фильтр - процедура принимает следующие сообщения по порядку, в котором они перечислены: - WM_PSD_PAGESETUPDLG - Диалоговое окно собирается делать прорисовку макета страницы. Фильтр - процедура может использовать это сообщение, чтобы приготовиться рисовать содержание макета страницы.
- WM_PSD_FULLPAGERECT - Диалоговое окно собирается делать прорисовку макета страницы. Это сообщение определяет ограничительный прямоугольник макета страницы.
- WM_PSD_MINMARGINRECT - Диалоговое окно собирается делать прорисовку макета страницы. Это сообщение определяет прямоугольник поля.
- WM_PSD_MARGINRECT - Диалоговое окно собирается делать прорисовку прямоугольника поля.
- WM_PSD_GREEKTEXTRECT - Диалоговое окно собирается делать прорисовку греческого текста внутри прямоугольника ограниченного полями.
- WM_PSD_ENVSTAMPRECT - Диалоговое окно собирается делать прорисовку в прямоугольнике страницы макета конверта с маркой. Это сообщение посылается только для конвертов.
- WM_PSD_YAFULLPAGERECT - Диалоговое окно собирается делать прорисовку по адресу возврата части макета страницы конверта. Это сообщение посылается для конвертов и бумаги других размеров.
PagePaintHook - метка - заместитель для определяемого программой или определенного библиотекой имени функции. Тип LPPAGEPAINTHOOK - указатель на фильтр - процедуру PagePaintHook. Смотри также PageSetupDlg, PAGESETUPDLG Размещение и совместимость PagePaintHook Windows NTДа Win95Да Win32sДа Импортируемая библиотекаОпределяется пользователем Заголовочный файлcommdlg.h УникодНет Замечания по платформеLPOFNHOOKPROC |