marcaurel1984
Mitglied
Hi at all,
mit folgendem Code Drucke ich etwas über den Printdialog aus, soweit funktioniert jetzt alles. Mein Problem besteht darin das ich das Programm so schreiben möchte das es aus einer externen Datei den Inhalt auslese ( Zeile für Zeile ) und für jede Zeile ein Druckauftrag generiert wird( die Variablen WarenNRvar, APKNRvar, LokationNRvar sollen aus dem Inhalt der externen Datei bestehen ). Das Auslesen der Datei ist kein Problem aber wie kann ich es umsetzen das daraus immer ein Druckauftrag generiert wird ? ... Habt Ihr eventuell Ideen, Denkanstösse oder Sonstiges ?
mfg Marc
mit folgendem Code Drucke ich etwas über den Printdialog aus, soweit funktioniert jetzt alles. Mein Problem besteht darin das ich das Programm so schreiben möchte das es aus einer externen Datei den Inhalt auslese ( Zeile für Zeile ) und für jede Zeile ein Druckauftrag generiert wird( die Variablen WarenNRvar, APKNRvar, LokationNRvar sollen aus dem Inhalt der externen Datei bestehen ). Das Auslesen der Datei ist kein Problem aber wie kann ich es umsetzen das daraus immer ein Druckauftrag generiert wird ? ... Habt Ihr eventuell Ideen, Denkanstösse oder Sonstiges ?
Code:
Public Class Form1
Private WithEvents docToPrint As New Printing.PrintDocument
Private Ausrichtung As Boolean
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
PrintDialog1.AllowSomePages = True
Dim Anzahl As Integer
For Anzahl = 1 To 2
'Dim result As DialogResult = PrintDialog1.ShowDialog()
'If (result = Windows.Forms.DialogResult.OK) Then
Ausrichtung = PrintDialog1.PrinterSettings.DefaultPageSettings.Landscape
docToPrint.Print()
'End If
Next
End Sub
Private Sub docToPrint_QueryPageSettings(ByVal sender As Object, ByVal e As System.Drawing.Printing.QueryPageSettingsEventArgs) Handles docToPrint.QueryPageSettings
e.PageSettings.Landscape = True
End Sub
Public Sub document_PrintPage(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) _
Handles docToPrint.PrintPage
' Inhalt
' definierte Felder
Dim WarenNR As String = "Warennummer: "
Dim APKNR As String = "APK: "
Dim LokationNR As String = "Lokation: "
' variable Felder
Dim WarenNRvar As String = "125896-00001"
Dim APKNRvar As String = "12"
Dim LokationNRvar As String = "12588 13"
Dim printFont As New System.Drawing.Font("Arial", 20, System.Drawing.FontStyle.Regular)
Dim printFontBold As New System.Drawing.Font("Arial", 26, System.Drawing.FontStyle.Bold)
Dim printFontBold2 As New System.Drawing.Font("Arial", 36, System.Drawing.FontStyle.Bold)
Dim printFontBoldLok As New System.Drawing.Font("Arial", 75, System.Drawing.FontStyle.Bold)
' Zeichnen des Rahmens
' Links
e.Graphics.DrawLine(Pens.Black, 10, 10, 10, 770)
' Rechts
e.Graphics.DrawLine(Pens.Black, 1120, 10, 1120, 770)
' Unten
e.Graphics.DrawLine(Pens.Black, 10, 770, 1120, 770)
' Oben
e.Graphics.DrawLine(Pens.Black, 10, 10, 1120, 10)
' Trennlinien
e.Graphics.DrawLine(Pens.Black, 10, 130, 1120, 130)
e.Graphics.DrawLine(Pens.Black, 10, 600, 1120, 600)
' Ausgabe des Strings.
e.Graphics.DrawString(WarenNR, printFontBold, System.Drawing.Brushes.Black, 50, 50)
e.Graphics.DrawString(APKNR, printFontBold, System.Drawing.Brushes.Black, 800, 50)
e.Graphics.DrawString(LokationNR, printFontBold2, System.Drawing.Brushes.Black, 50, 650)
' Ausgabe des variablen Strings.
e.Graphics.DrawString(WarenNRvar, printFontBold, System.Drawing.Brushes.Black, 400, 50)
e.Graphics.DrawString(APKNRvar, printFontBold, System.Drawing.Brushes.Black, 900, 50)
e.Graphics.DrawString(LokationNRvar, printFontBoldLok, System.Drawing.Brushes.Black, 330, 600)
End Sub
Private Sub BeendenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BeendenToolStripMenuItem.Click
Close()
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
PrintPreviewDialog1.Document = docToPrint
PrintPreviewDialog1.ShowDialog()
End Sub
End Class
mfg Marc