VB Printfunktion erstellt nur ein weisses Blatt.

  • VB.NET

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von RodFromGermany.

    VB Printfunktion erstellt nur ein weisses Blatt.

    Hallo Zusammen



    ich habe ein Problem mit der Printfunktion. Jedes mal wenn ich die Printfunktion aufrufe, druckt es mir nur ein leeres Blatt aus obwohl es ein Dialog ausdrucken sollte. Könnt ihr mir weiterhelfen ?




    VB.NET-Quellcode

    1. Private Sub cmdDrucken_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdDrucken.Click
    2. Dim printDialog1 As PrintDialog = New PrintDialog
    3. printDialog1.Document = PrintDocument1
    4. Dim result As DialogResult = printDialog1.ShowDialog
    5. If (result = DialogResult.OK) Then
    6. PrintDocument1.Print()
    7. End If
    8. End Sub



    Danke für eine rasche Antwort.
    wie haste denn die Daten an dein printdokument übergeben?

    generell bei Dialogen... lieber mit Using arbeiten

    VB.NET-Quellcode

    1. Using pdlg As New PrintDialog
    2. With pdlg
    3. If pdlg.ShowDialog <> DialogResult.OK Then
    4. Return
    5. Else
    6. 'mach wat...
    7. End If
    8. End With
    9. End Using
    Danke für die Antwort.

    Ich mochte ein Printscreen von einer Form machen, doch irgendwie funktionierts nicht und ich habe im Internet nachgeschaut aber so richtig verstehen kann ich es nicht. Gibt es eine einfache lösung um einen Printsrceen zu machen und es aus zu drucken ? Normalerweise funktioniert es doch mit Form1.Print ?

    Freundliche Grüsse Rémi
    Zum Drucken m usst Du Dir das PriintPage-Event des PrintDocuments holen und Deine Seite wie beim Paint-Event malen:

    VB.NET-Quellcode

    1. Private Sub PrintDocument1_PrintPage(sender As System.Object, e As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage
    2. e.Graphics.DrawString("bla", New Font("Arial", 20), Brushes.Black, 30, 30)
    3. End Sub
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Ok Danke für die Antwort aber ich denke das dieser Bereich für mich ein bisschen zu schwer ist, aber ich versuche es mit hilfe von google und von euch das Programm zu verbessern.

    Ich schildere meine Wüsche im Dateil auf:

    Ich habe ein Programm mit Treeviews und ich habe ein Button erstellt mit "Drucken" und wenn ich den Button betätige, möchte ich das es mir die Treeviews ausdruckt, wie es in den Treeviews aufgelistet ist. Siehe Bild (Bild1.png).

    Wenn jemand mir mit wenigen Tipps weiter helfen könnt wäre ich sehr dankbar, denn mit den Print Funktionen kenne ich mich in VB zuwenig gut aus.

    Freundliche Grüsse Rémi Lay
    Bilder
    • Bild1.png

      6,81 kB, 145×528, 120 mal angesehen
    Willst Du diesen TreeView als Vektorgrafik drucken oder genügt es Dir, eine Bildschirmkopie davon zu drucken?
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Welch salomonische Antwort. :D :D :D
    Mach Dir ein kleines Testprojekt und übe das Ausdrucken.
    Du brauchst einen Button zum Starten und ein PrintDocument für den Inhalt.
    Nutze einen PDF-Drucker, damit Du kein Papier verschwendest.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    RodFromGermany schrieb:

    Welch salomonische Antwort. :D :D :D
    Mach Dir ein kleines Testprojekt und übe das Ausdrucken.
    Du brauchst einen Button zum Starten und ein PrintDocument für den Inhalt.
    Nutze einen PDF-Drucker, damit Du kein Papier verschwendest.
    War ein sehr kleines Projekt xD

    Private Sub PrintDocument1_PrintPage(ByVal sender As System.Object, _
    ByVal e As System.Drawing.Printing.PrintPageEventArgs) _
    Handles PrintDocument1.PrintPage
    Dim bmp As New Bitmap(Me.Width, Me.Height)
    Me.DrawToBitmap(bmp, New Rectangle(0, 0, Me.Width, Me.Height))
    e.Graphics.DrawImage(bmp, 0, 0)
    End Sub

    Private Sub cmdDrucken_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdDrucken.Click
    If PrintDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
    PrintDocument1.Print()
    End If
    End Sub
    :thumbup:
    Dann übe gleich weiter und drucke ein wenig Text aus.
    Sieh Dir mal dies an:

    VB.NET-Quellcode

    1. Dim g As Graphics = Me.CreateGraphics
    2. Dim ft As New Font("Arial", 20)
    3. Dim sz As SizeF = g.MeasureString("bla", ft)
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!