• WinForm打印控件


    WinForm 打印控件与其他控件有些不同,其它控件可以直接使用,但是打印控件需要一个中间控件来帮助实现.

    对于系统而言是如何打印:把要打印的内容变成图片在打印.

    所有打印控件:

    (1)中间控件(先设置):PrintDocument[[[最重要的就是明白这个中间变量是干啥的就可以了]]]

    设置PrintDocument 事件中的 PrintPage 属性[对于要打印的每一页发生一次]:

    //实例化一个Font类型,作为默认的Font属性,(字体类型,字体大小)
                Font fo=new Font("宋体",19);
                //实力化一个Brush颜色类型,作为默认的颜色
                Brush br = new SolidBrush(Color.Red);
                //设置事件数据(数据对象,font,brush,X坐标,Y坐标)
                e.Graphics.DrawString(textBox1.Text,fo,br,10,20);

    (2)此时可以设置其它的打印控件了,先设置打印设置控件PageSetupDialog

     //先把中变变量设置到控件中 pageSetupDialog1.Document = printDocument1; //实例化控件 DialogResult dl = pageSetupDialog1.ShowDialog(); 

    (3)设置打印预览控件PrintPreviewDialog

      //先把中变变量设置到控件中 printPreviewDialog1.Document = printDocument1; //实例化控件 DialogResult dl = printPreviewDialog1.ShowDialog(); 

    这里也介绍一下PrintPreviewControl控件,这个是在窗体中可以直接直接展示的打印预览状态的控件,只能展示,不能设置.

    右侧的文档不包含任何页就是PrintPreviewControl控件,他在窗体中需要有位置才能展示.

     //直接使用中间变量 printPreviewControl1.Document = printDocument1; 

    (4)最终打印,PrintDialog,先设置该控件的各种属性,很多都是没有打开的,然后:

     printDialog1.Document = printDocument1;
                DialogResult dl = printDialog1.ShowDialog();
                if (dl == DialogResult.OK)
                {
                    //打印的是中间变量
                    printDocument1.Print();
                }
  • 相关阅读:
    P3899 [湖南集训]谈笑风生
    bzoj3252: 攻略
    批量创建用户20个和密码
    创建100个目录dir1-dir100一键完成
    SVM的优缺点
    Python zip() 函数
    经典博客4
    python的空格和tab混用报错问题
    Python的functools.reduce用法
    matplotlib显示AttributeError: 'module' object has no attribute 'verbose'
  • 原文地址:https://www.cnblogs.com/zhangxin4477/p/6802819.html
Copyright © 2020-2023  润新知