zoukankan      html  css  js  c++  java
  • VC++分页打印实现

      VC++分页打印实现:

     C++ Code 
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
    //打印对话框
    DWORD dwFlags = PD_ALLPAGES | PD_USEDEVMODECOPIES | PD_NOPAGENUMS | PD_NOSELECTION | PD_HIDEPRINTTOFILE;
    CPrintDialog dlg(FALSE);
    if (dlg.DoModal() == IDOK)
    {
        
    //获得打印机DC
        HDC hDC = dlg.GetPrinterDC();
        
    if (hDC == NULL)
        {
            
    return;
        }
        
    //通过HDC获得CDC指针
        CDC *pDC = CDC::FromHandle(hDC);
        pDC->m_bPrinting = TRUE;
        
    //文档信息
        DOCINFO di;
        ::ZeroMemory (&di, 
    sizeof (DOCINFO));
        di.cbSize = 
    sizeof (DOCINFO);
        di.lpszDocName = _T(
    "Demo");
        
    //开始打印
        BOOL bPrinting = pDC->StartDoc(&di);
        
    for (UINT nPage = 0; nPage < 10 && bPrinting; nPage++)
        {
            pDC->StartPage();
            
    //输出文本
            CString strText = _T("");
            strText.Format(_T(
    "第%d页"), nPage + 1);
            pDC->TextOut(
    1000, strText);
            
    for (int i = 0; i < 100; i++)
            {
                pDC->TextOut(
    100100 * (i + 1), _T("Hello World!"));
            }
            bPrinting = (pDC->EndPage() > 
    0);
        }

        
    if (bPrinting)
        {
            pDC->EndDoc();
        }
        
    else
        {
            pDC->AbortDoc();
        }
        
    //结束打印
        pDC->EndDoc();
        
    //删除DC
        pDC->DeleteDC();
    }

  • 相关阅读:
    Django models中的null和blank的区别
    3次登陆锁定与backend增删改查
    Python全栈考试(一)
    python第一天几个小游戏
    linux开发脚本自动部署及监控
    Linux awk&shell script
    linux正则表达式grep&sed
    linux网路IP.设定主机名.ssh .bash命令&通配符
    Linux:nginx(web服务),nfs服务+反向代理+负载均衡
    Linux内存dd,rpm,yum,软件安装
  • 原文地址:https://www.cnblogs.com/MakeView660/p/8534088.html
Copyright © 2011-2022 走看看