| 释义 |
CPageSetupDialog::OnDrawPage
virtual UINT OnDrawPage( CDC* pDC, UINT nMessage, LPRECT lpRect );
返回值:如果被处理则返回非零值;否则返回0。
参数:| pDC | 指向打印机设备环境的指针。 | | nMessage | 指明一个消息,表示当前绘画页面的区域。可以是下列值之一:| · | WM_PSD_FULLPAGERECT | 整个页面区。 | | · | WM_PSD_MINMARGINRECT | 当前最小边距。 | | · | WM_PSD_MARGINRECT | 当前边距。 | | · | WM_PSD_GREEKTEXTRECT | 页面的内容。 | | · | WM_PSD_ENVSTAMPRECT | 为贴邮票而保留的区域。 | | · | WM_PSD_YAFULLPAGERECT | 用于返回地址的区域。这个区域延伸到示例页区域的边界。 |
| | lpRect | 指向一个CRect或RECT对象的指针,这两个对象包含了绘画区的坐标。 |
说明: 由框架调用来画一个打印页面的屏幕图像。然后这个图像作为通用OLE PageSetup对话框的一部分来显示。函数的缺省实现是画一个文本页的图像。 重载这个函数可以定制是画图像的指定区域,还是画整个图像。你可以使用switch和case语句来检查nMessage的值。例如,为了定制获取表示图像的内容,你可以使用下面的例子代码: Switch( nType ) { case WM_PSD_GREEKTEXTRECT: DrawMyImage( pDC, lpRect); //画我的指定图像。 return 1; default: return ::Draw(CDC* pDC, UINT nDrawType, LPRECT lpRect); }; 注意:你不需要处理nMessage的每一个取值。可以选择处理图像的某一部分,某几个部分或整个区域。
请参阅:CPageSetupDialog::PreDrawPage |