[VB] andere printer dan standaardprinter gebruiken

Pagina: 1
Acties:

  • tim-w
  • Registratie: Juli 2001
  • Laatst online: 12:45

tim-w

TiPisch...

Topicstarter
Ik heb een script gemaakt waarmee ik een textbestand kan afdrukken...
nu is het probleem dat ik alleen naar de standaardprinter kan printen.

Ik heb gelezen dat dat opgelost kan worden met CommonDialog, maar dat vind ik niet zon sjieke oplossing...
Ik heb dus een comboBox gemaakt (cmbPrinters) waarin alle printers komen te staan
code:
1
2
3
4
5
6
7
8
9
10
Private Sub Form_Load()

Dim intT As Integer
For intT = 0 To Printers.Count - 1
    cmbPrinters.AddItem Printers(intT).DeviceName
Next intT

cmbPrinters.Text = Printer.DeviceName

End Sub


Maar ik kan nu de waarde van die Combobox niet als Printer instellen...

Iemand een idee hoe ik dat kan aanpakken?

But Seriously...


  • whoami
  • Registratie: December 2000
  • Laatst online: 17:38
Wil je niet doen:
code:
1
Printer.DeviceName = cmbPrinters.Text

:?

https://fgheysels.github.io/


  • tim-w
  • Registratie: Juli 2001
  • Laatst online: 12:45

tim-w

TiPisch...

Topicstarter
die opdracht geeft een foutmelding:

"Compile Error: Wrong number of arguments or invalid property assignment"...

(vanzelfsprekend had ik dat al geprobeert, anders stelde ik de vraag hier niet...)

[ Voor 31% gewijzigd door tim-w op 03-11-2003 16:52 ]

But Seriously...


  • RayNbow
  • Registratie: Maart 2003
  • Laatst online: 17:52

RayNbow

Kirika <3

Visual Basic:
1
Set Printer = Printers(cmbPrinter.ListIndex)

Ipsa Scientia Potestas Est
NNID: ShinNoNoir


  • pjonk
  • Registratie: November 2000
  • Laatst online: 29-12-2025
Om volledig te zijn:
Visual Basic:
1
2
Dim prn as Printer
Set prn = Printers(cmbPrinter.ListIndex)


Je moet uiteraard een object van het type Printer aanmaken voordat je een Set kan doen. Printers is een collection dwz een verzameling van Printer objecten. In dit geval wil je 1 object van het type printer uit de collection opvragen. Je gebruikt de listindex van de combobox om de juiste printer uit de collectie op te vragen..

Wellicht is het verstandig om eerst wat basiskennis over objects, collections en classes op te doen. De link hieronder is ook relevant:

http://msdn.microsoft.com...b98/html/vbobjprinter.asp

[ Voor 1% gewijzigd door pjonk op 03-11-2003 20:34 . Reden: typo's ]

It’s nice to be important but it’s more important to be nice


  • tim-w
  • Registratie: Juli 2001
  • Laatst online: 12:45

tim-w

TiPisch...

Topicstarter
daar kan ik eerst wel mee verder...

bedankt!

But Seriously...


  • RayNbow
  • Registratie: Maart 2003
  • Laatst online: 17:52

RayNbow

Kirika <3

JonkieXL schreef op 03 november 2003 @ 20:33:
Om volledig te zijn:
Visual Basic:
1
2
Dim prn as Printer
Set prn = Printers(cmbPrinter.ListIndex)


Je moet uiteraard een object van het type Printer aanmaken voordat je een Set kan doen. Printers is een collection dwz een verzameling van Printer objecten. In dit geval wil je 1 object van het type printer uit de collection opvragen. Je gebruikt de listindex van de combobox om de juiste printer uit de collectie op te vragen..

...
Dat is niet nodig. Printer is zelf al een bestaand object dat al beschikbaar is in VB. Zie MSDN: "Printing with the Printer Object"

Een fragment uit de MSDN:

Visual Basic:
1
2
3
4
Printer.Print "This is page 1."
Printer.NewPage
Printer.Print "This is page 2."
Printer.EndDoc


Dus als je met Printer print is die ene regel code uit m'n vorige post genoeg.

Ipsa Scientia Potestas Est
NNID: ShinNoNoir

Pagina: 1