Försöker skapa en funktion där man skall kunna välja skrivare och sedan skriva ut en text på denna. Kika på api anropet: Hittade detta, prova!Inte ändra defaultskrivare
Sub
dlgCommonDialog.CancelError = True
On Error GoTo ErrorHandler
dlgCommonDialog.ShowPrinter
Printer.Print "Min text"
Printer.EndDoc
Exit Sub
ErrorHandler:
Select Case Err.Number
Case 32755
Case Else
Stop
End Select
End Sub
Problemet är att defaultskrivaren (i Windows) ändras när jag väljer en annan skrivare än defaultskrivaren, samt att ibland kommer inte dialogrutan (för skrivarval) upp alls???
Någon som kan detta bättre?
/MSv: Inte ändra defaultskrivare
http://www.mentalis.org/apilist/1D52C7E03E3782E75B883E436E7B341B.html
Jag har hört att man med wizards kan göra star trek spel i vb. Sv: Inte ändra defaultskrivare
'Form: Form1
Option Explicit
Private Sub Form_Load() ...
Private Sub Form_Load()
If Printer Is Nothing Then
cmdPrint.Enable = False
Else
Combo1.Text = Printer.DeviceName
End if
End Sub
Private Sub cmdPrint_Click() ...
Private Sub cmdPrint_Click()
Dim x As Printer
Dim DeviceName
DeviceName = Combo1.Text
For Each x In Printers
If x.DeviceName = DeviceName Then
DoPrint x
Exit For
End If
Next
End Sub
Public Sub DoPrint(MyPrinter as Printer) ...
Public Sub DoPrint(MyPrinter as Printer)
MyPrinter.Print "Test"
MyPrinter.EndDoc
End sub