Print weiterer Seiten Visual Studio 2012 Express

  • VB.NET

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von ErfinderDesRades.

    Print weiterer Seiten Visual Studio 2012 Express

    Hallo zusammen,

    nach langer Suche mit Beispielen im Internet und suche im Forum mit etlichen älteren Beispielen, komme ich trotzdem mit meinem vereinfachten Beispiel von einem Druck mit mehreren Seiten nicht weiter. Ich versteh einfach nicht was an meinem Beispielcode und dem Aufruf falsch ist? Habe ältere Beiträge Internet/Forum von ca. 2010 wo das doch genauso gehandhabt wird?

    Ich nutze Visual Basic 2012 und möchte ganz einfach eine gewissen Anzahl von Zeilen pro Seite darstellen, dann soll eine neue Seite erstellt werden.

    Was ich einfach vermisse zu dem Thema PrintForms, ich habe weder in Lehrbüchern noch im Internet simple Tutorials gefunden wie man mit meheren Seiten arbeitet und das ganze an einem vereinfachten Beispiel. Vielen Dank schon einmal im Voraus.

    Grüße
    Cerberus

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Sub cmdDrucken_Click(sender As Object, e As EventArgs) Handles cmdDrucken.Click
    3. If PrintDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
    4. PrintDocument1.PrinterSettings = PrintDialog1.PrinterSettings
    5. PrintDocument1.Print()
    6. End If
    7. End Sub
    8. Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    9. PrintPreviewControl1.Document = PrintDocument1()
    10. End Sub
    11. Private Sub PrintDocument1_PrintPage(sender As Object, e As Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage
    12. Dim x, y As String : x = 50 : y = 50
    13. Dim zeile As Integer : zeile = 0
    14. Dim seite As Integer = 0
    15. Dim fontart As Font = New Drawing.Font("Arial", 12)
    16. e.HasMorePages = False
    17. For b As Integer = 0 To 90 Step 1
    18. e.Graphics.DrawString("Durchlauf: " & b, fontart, Brushes.Black, x, y)
    19. y += 20
    20. zeile += 1
    21. 'Wenn Zeilen von 30 überschritten, dann mache eine neue Seite (Was ist daran falsch?)
    22. If zeile > 30 Then
    23. zeile = 0
    24. y = 50
    25. e.HasMorePages = True
    26. Else
    27. e.HasMorePages = False
    28. End If
    29. Next
    30. End Sub
    31. End Class