解决方案 »

  1.   

    用这个模块,直接可以用,不用谢我,我是雷锋
    //打印按钮响应函数
    void CGetipDlg::OnButton3()
    {
    CPrintDialog print(false);//定义打印对话框对象
    if(print.DoModal()==IDOK)//显示打印对话框,如果点击了“确定”,那么开始下面的打印过程。
    {
        CDC printcd;
        printcd.Attach(print.GetPrinterDC());//获得打印句柄    DOCINFO pdoc;//定义文档信息对象,以下获得要打印的文档信息
        pdoc.cbSize=sizeof(pdoc);//文档大小
        pdoc.lpszDocName="pdoc";//文档名字
        pdoc.lpszDatatype=NULL;//文档数据类型
        pdoc.fwType=NULL;
        pdoc.lpszOutput=NULL;
        if(printcd.StartDoc(&pdoc)>=0)//开始打印
        {
            LOGFONT logfont;
            memset(&logfont,0,sizeof(LOGFONT));
            logfont.lfHeight=75;//这三句设置打印字号
            
            CFont font;
            CFont *oldfont=NULL;
            if(font.CreateFontIndirect(&logfont))
               oldfont=(CFont*)printcd.SelectObject(&font);//设置打印字体
            for(int i=1;i<3;i++)//分页打印,并打印页码
           {
                 CString stt;
                stt.Format(_T("第%d页 test print file %d"),i,i);
                
                printcd.StartPage();//开始打印
                printcd.TextOut(0,100,stt);//打印页码
                printcd.EndPage();//结束本页打印
            }        font.DeleteObject();
            if(oldfont!=NULL) printcd.SelectObject(oldfont);//恢复以前的字体对象
          printcd.EndDoc();//结束打印
        }
        printcd.DeleteDC();//删除打印对象
    }
    }