当前位置导航:炫浪网>>网络学院>>编程开发>>C++教程>>Visual C++教程

怎样用CPrintDialog来实现打印功能

把以下程序段加入你的程序
    把dc1当作Device Content.
    就任你打印了.注意别画错地方.
    自己换页.
    更绝的是可调用窗口的OnPrint或OnDraw成员函数直接打印.不用你去做行距多少啦!
    但别忘换页.

    // 打印
    // 建立打印对话框对象
    CPrintDialog
    d1(FALSE,PD_ALLPAGES|PD_ALLPAGES|PD_NOPAGENUMS,NULL);
    HDC dc1;


    if(d1.DoModal()==IDOK){
    // 返回一个打印DC句柄
    dc1=d1.GetPrinterDC();

    // 启动打印工作
    StartDoc(dc1,&docin);

    // 一页开始
    StartPage(dc1);

    dc1.textout(.....)
    dc1.draw(....)
    ....

    // 一页结束
    EndPage(dc1);

    可以有多个StartPage(dc1)
    ...
    EndPage(dc1)

    // 终止打印工作
    EndDoc(dc1);
    // 删除句柄
    if(DeleteDC(dc1)){
    return TRUE;
    }else{
    出错信息
    EndDoc(dc1);
    // 删除句柄
    if(DeleteDC(dc1)){
    return TRUE;
    }else{
    出错信息
    }
    }

相关内容
赞助商链接