vb 打印机选择的问题

来源:百度知道 编辑:UC知道 时间:2024/05/17 07:27:32
VB调用CommonDialog1控件 选择打印机代码如下:
CommonDialog1.PrinterDefault = True '改变打印机的默认设置
CommonDialog1.Flags = cdlPDPrintSetup Or cdlPDReturnIC
CommonDialog1.CancelError = True
CommonDialog1.ShowPrinter
me.printform
问题是选择打印机打印后,默认的打印机总是变化,我希望的是选择指定的打印机进行此次打印,然后打印机又变回原来的默认打印机(CommonDialog1.PrinterDefault =false的话,总是选择的默认打印机)

选择打印机的方法有很多,你这样做也行,因为printform方法只打印到默认的打印机,照你的写法,你可以先用PRINTER取得默认打印的名字,me.printform完后。 再将打印机设回,不过这方法不是最好的。
如:
如果你的默认打印机名为

dim defPrinter as string
defPrinter = Printer.devicename
'*** 这里运行你的代码
Dim X As Printer

For Each X In Printers
if X.devicename = defPrinter then
Set Printer = X
exit for
end if
Next