vb.net 教程 11-1 打印组件 4 PrintDocument 2

来源:互联网 发布:qq linux 编辑:程序博客网 时间:2024/06/07 06:31
上一节讲了一个打印的简单例子。本节继续讲解PrintDocument组件的使用。

继续分析一下上一节的代码。
代码中先是调用了打印对话框,然后再打印的,其实在打印对话框PrintDialog的时候也没有做什么设置,直接按下打印也可以打印出来
那么深入一点考虑,是否打印对话框也不需要呢?

修改代码如下:

    '按下打印按钮    Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click        PrintDocument1.Print()    End Sub
即,把有关PrintDialog相关的代码去掉了,再试一下。
这次按下“打印”按钮,直接出来“将打印输出另存为”对话框,ok,保存为cc.oxps,和上次的dd.oxps区别一下

打开cc.oxps:

也是正确的。

这是因为PrintDocument使用了默认的打印设置。
默认的设置可以调用 PrintDocument1.DefaultPageSettings属性获得:

使用以下代码获得默认打印设置:
    '获得PrintDocument默认打印设置    Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click        TextBox1.Text = "打印机:" & PrintDocument1.DefaultPageSettings.PrinterSettings.PrinterName & ControlChars.CrLf &            "支持彩色打印:" & IIf(PrintDocument1.DefaultPageSettings.PrinterSettings.SupportsColor, "是", "否") & ControlChars.CrLf &            "打印纸张:" & PrintDocument1.DefaultPageSettings.PaperSize.PaperName & ControlChars.CrLf &            "打印方向:" & IIf(PrintDocument1.DefaultPageSettings.Landscape, "横向", "竖向") & ControlChars.CrLf &            "打印份数:" & PrintDocument1.DefaultPageSettings.PrinterSettings.Copies    End Sub

运行结果:
可见,即使不设置,也可以实现打印,只不过调用的是默认设置。
当然在有些场合,比如要想打印到真正的纸张上,但是默认打印机却是虚拟打印机,那就不适合了。

学习更多vb.net知识,请参看 vb.net 教程 目录

原创粉丝点击