如何设定打印机
在下有一个问题想请教你,我现在计算机上安装了两台打印机,一台是EPSON LQ1600K(默认打印机),另一台是PIC-PRINTER,(PIC PRINTER其实是一台传真机,在系统里它是默认为是打印机)现在我想这么做,在一个应用程序里(用VB编写的),不要用户自已去切换默认打印机,用程序来自已切换,即有的时候要发传真了,就将PIC-PRINTER设置为默认打印机,要打印了,就将EPSON LQ1600K设置为默认打印机,我看了VB中有关Printer.Port中的帮助后,按它的说明去做了,但不能切换过来,请你帮我想想有没有更好一点的方法,谢谢! 回答:
你不应该修改Printer.Port,它指的是打印机连接到哪个端口,LPT1或是LPT2等等。而要指定打印机需要借助Printers集合,下面的程序列出系统内所有的打印机: Dim x
For Each x In Printers
Print x.DeviceName
Next
如果要指定使用某台打印机,可以使用下面的过程:
Sub SetPrinterByName(s As String)
Dim x
For Each x In Printers
If x.DeviceName = s Then
Set Printer = x
Exit Sub
End If
Next
End Sub
在打印前,调用
SetPrinterByName "PIC-PRINTER"
就可以切换到PIC-PRINTER,以后使用Printer对象输出就是通过PIC-PRINTER进行传真。
这种修改方法可以改变输出的打印机,但不会改变系统默认打印机,也就是说当你的程序退出后,系统的默认打印机仍然是原来的,不会给用户带来不方便。
如何设定打印机
在下有一个问题想请教你,我现在计算机上安装了两台打印机,一台是EPSON LQ1600K(默认打印机),另一台是PIC-PRINTER,(PIC PRINTER其实是一台传真机,在系统里它是默认为是打印机)现在我想这么做,在一个应用程序里(用VB编写的),不要用户自已去切换默认打印机,用程序来自已切换,即有的时候要发传真了,就将PIC-PRINTER设置为默认打印机,要打印了,就将EPSON LQ1600K设置为默认打印机,我看了VB中有关Printer.Port中的帮助后,按它的说明去做了,但不能切换过来,请你帮我想想有没有更好一点的方法,谢谢! 回答:
你不应该修改Printer.Port,它指的是打印机连接到哪个端口,LPT1或是LPT2等等。而要指定打印机需要借助Printers集合,下面的程序列出系统内所有的打印机: Dim x
For Each x In Printers
Print x.DeviceName
Next
如果要指定使用某台打印机,可以使用下面的过程:
Sub SetPrinterByName(s As String)
Dim x
For Each x In Printers
If x.DeviceName = s Then
Set Printer = x
Exit Sub
End If
Next
End Sub
在打印前,调用
SetPrinterByName "PIC-PRINTER"
就可以切换到PIC-PRINTER,以后使用Printer对象输出就是通过PIC-PRINTER进行传真。
这种修改方法可以改变输出的打印机,但不会改变系统默认打印机,也就是说当你的程序退出后,系统的默认打印机仍然是原来的,不会给用户带来不方便。