方法原型如下:
virtual int StartPage();
返回值表示操作的结果,通常为非负数表示成功,负数表示失败。
以下是一个简单的例子,演示如何使用 StartPage 方法:
CPrintDialog printDlg(FALSE);
if (printDlg.DoModal() == IDOK) {
CDC dc;
dc.Attach(printDlg.GetPrinterDC());
DOCINFO docInfo;
memset(&docInfo, 0, sizeof(DOCINFO));
docInfo.cbSize = sizeof(DOCINFO);
docInfo.lpszDocName = _T("MyPrintDocument");
int result = dc.StartDoc(docInfo);
if (result > 0) {
// 开始第一页
int startPageResult = dc.StartPage();
if (startPageResult > 0) {
// 在页中进行绘制操作
// 结束页
dc.EndPage();
} else {
// 打印页启动失败
}
// 结束文档
dc.EndDoc();
} else {
// 打印文档启动失败
}
dc.Detach();
}
在这个例子中,首先使用 CPrintDialog 获取打印机设备上下文,然后调用 StartDoc 方法开始一个新文档的打印任务。接着调用 StartPage 方法开始第一页的打印任务,在页中进行绘制操作,最后通过 EndPage 方法结束页。需要注意的是,StartPage 和 EndPage 需要嵌套使用,确保在开始一页后结束页。
转载请注明出处:http://www.zyzy.cn/article/detail/17033/MFC/CDC