Visual Basic 数据打印
窗体和控件内的数据除了可以输出到文件外,还可以发送到打印机打印出来。Visual Basic中存在着两种打印方式:Printer对象和PrintForm方法。
1. Printer对象
Printer对象用于把程序的运行结果打印出来。例如,要将文本编辑器(例6.5)中的文字打印出来,可先将这些数据放入Printer对象中,再利用Printer对象的方法将Printer对象中的内容打印出来。
Printer对象的属性应通过程序代码进行设置,在设计时不能使用。初始化时为Windows“控制面板”中设置的打印机属性。在一页当中,一旦设置了某个属性,就不能改变,对这些属性的改变只能影响以后各页。Printer对象的一些常用属性如表6.7所示。
表6.7 Printer对象的属性
| 属 性 | 描 述 | 属 性 | 描 述 | 
| PaperSize | 打印纸规格 | Height | 纸张物理高度 | 
| Width | 纸张物理宽度 | Orientation | 横向还是纵向 | 
| ColorMode | 单色还是彩色 | Duplex | 是否双面 | 
| Page | 当前页号 | Zoom | 扩大或缩小 | 
| Port | 打印机端口 | Copies | 打印份数 | 
| PaperBin | 关纸方式 | PrintQuality | 打印质量 | 
将图形或文本放到Printer对象后,可用EndDoc方法将打印内容送往打印缓冲区。如果没有调用EndDoc方法,结束应用程序时,会自动调用。例如,打印文本编辑器的内容:
Printer.FontName = "楷体_GB2312"
Printer.FontSize = 12
Printer.Print Text1.Text
Printer.EndDoc
使用KillDoc方法可以立即终止当前的打印工作,删除Windows处理打印作业时送入打印机的所有作业。NewPage方法则用于终止当前页,进入到下一页。
2. PrintForm方法
PrintForm方法用于将指定的窗体以图像样式发送到打印机。其格式为:
[对象.]PrintForm
如果省略对象,则打印当前的活动窗体。PrintForm将打印Form对象的全部内容,即使窗体的某部分在屏幕上不可见。只有当AutoRedraw属性为True时,PrintForm才打印Form或PictureBox控件上的图形。
