vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
TOP-Angebot: 17 bzw. 24 Entwickler-Vollversionen zum unschlagbaren Preis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Drucken / Statusmeldung ? 
Autor: rub_
Datum: 29.08.05 13:52

Hallo,

Ich will ein Bild ausdrucken. Das geht auch ganz gut, jedoch würde ich gerne abfragen, ob bereits Druckaufträge in der Warteschlange des Druckers vorhanden sind, wie geht das?
So wird mein Bild gedruckt. Erste werden die Werte aus der Datenbank ermittelt und dann über PrintDocument ausgedruckt.
    Private PageCounter As Integer
 
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles Button1.Click
        Dim currentPrintDocument As PrintDocument
        Dim dr As System.Data.DataRow
 
        Try
            'Auswahl, Sortierung etc. noch implementieren.
            For Each dr In Me.DS_TerminalService1.Tables( _
              "tblTerminalPrinterJobsPages").Rows
                'Variable wird initialisiert.
                currentPrintDocument = New PrintDocument()
                'Documentenname wird übergeben.
                currentPrintDocument.DocumentName = "Test" & PageCounter
                'Handler für 'Page' wird erzeugt.
                AddHandler currentPrintDocument.PrintPage, AddressOf _
                  Me.PrintPage
                'Hier wird der Drucker übergeben.
                currentPrintDocument.PrinterSettings.PrinterName = _
                  "\\FSC01\Lexmark Optra"
                'Prüft, ob Drucker funktionsfähig ist.
                If currentPrintDocument.PrinterSettings.IsValid Then
                    currentPrintDocument.Print()
                Else
                    MessageBox.Show("Printer is invalid.")
                End If
                'PageCounter wird erhöht.
                PageCounter = PageCounter + 1
            Next
        Catch
            MsgBox("Fehler beim Drucken!")
        End Try
    End Sub
 
    Private Sub PrintPage(ByVal sender As Object, ByVal e As PrintPageEventArgs)
        Dim metafile1
        Dim Storagedb As Stream
 
        'Umwandlung von des Streams in ein Metafile.
        Dim bits As Byte() = CType(Me.DS_TerminalService1.Tables( _
          "tblTerminalPrinterJobsPages").Rows(PageCounter).Item("Meta"), Byte())
        Storagedb = New MemoryStream(bits)
        'Stream wird zurückgesetzt.
        Storagedb.Seek(0, SeekOrigin.Begin)
        metafile1 = New Metafile(Storagedb)
        'Stream wird geschlossen.
        Storagedb.Close()
        'Grafic wird übergeben.
        e.Graphics.DrawImage(metafile1, 60, 10)
        'Metafile wird gelöscht.
        metafile1.Dispose()
        'Nur einzelne Seiten.
        e.HasMorePages = False
    End Sub

Gru? Rub

(PS: Besuch doch mal meine Seiten http://e-liquids.de und http://jjpassion.de)

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Drucken / Statusmeldung ?946rub_29.08.05 13:52

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel