CDC::StartPage 是 MFC(Microsoft Foundation Classes)库中的方法之一,用于开始打印页的操作。这个方法用于通知打印机开始一个新的打印页。

方法原型如下:
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