方法原型如下:
virtual int StartDoc(
const CString& strDocName
);
参数 strDocName 是要打印的文档的名称,它将显示在打印对话框中。
返回值表示操作的结果,通常为非负数表示成功,负数表示失败。返回值是一个由 GDI 打印系统定义的文档标识符。
以下是一个简单的例子,演示如何使用 StartDoc 方法:
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) {
// 在文档中进行绘制操作
// 结束文档
dc.EndDoc();
} else {
// 打印文档启动失败
}
dc.Detach();
}
在这个例子中,首先使用 CPrintDialog 获取打印机设备上下文,然后调用 StartDoc 方法开始一个新文档的打印任务。接着在文档中进行绘制操作,最后通过 EndDoc 方法结束文档。需要注意的是,使用 Attach 方法将打印机设备上下文关联到 CDC 对象,使用 Detach 方法解除关联。
转载请注明出处:http://www.zyzy.cn/article/detail/17032/MFC/CDC