vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
vb@rchiv Offline-Reader - exklusiv auf der vb@rchiv CD Vol.4  
 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
Re: Panel mit Controls ausdrucken?? 
Autor: Maywood
Datum: 17.01.06 11:56

Hier ein Beispiel:
    Dim img As Bitmap = Nothing
    Dim WithEvents pd As PrintDocument
 
    Function MakeScreenShot(ByVal FromControl As Control) As Bitmap
        Dim gr1 As Graphics = FromControl.CreateGraphics()
        Dim gr2 As Graphics = Nothing
        Dim img As Image = New Bitmap(FromControl.ClientRectangle.Width, ( _
          FromControl.ClientRectangle.Height), gr1)
        Dim dc1 As IntPtr = IntPtr.Zero
        Dim dc2 As IntPtr = IntPtr.Zero
        gr2 = Graphics.FromImage(img)
        dc1 = gr1.GetHdc()
        dc2 = gr2.GetHdc()
        BitBlt(dc2, 0, 0, FromControl.ClientRectangle.Width, ( _
          FromControl.ClientRectangle.Height), dc1, 0, 0, 13369376)
        gr1.ReleaseHdc(dc1)
        gr2.ReleaseHdc(dc2)
        Return CType(img, Bitmap)
    End Function
 
    <DllImport("gdi32.DLL", EntryPoint:="BitBlt", _
    SetLastError:=True, CharSet:=CharSet.Unicode, _
    ExactSpelling:=True, CallingConvention:=CallingConvention.StdCall)> _
    Private Shared Function BitBlt(ByVal hdcDest As IntPtr, ByVal nXDest As _
    Integer, _
                                   ByVal nYDest As Integer, ByVal nWidth As _
                                   Integer, _
                                   ByVal nHeight As Integer, ByVal hdcSrc As _
                                   IntPtr, _
                                   ByVal nXSrc As Integer, ByVal nYSrc As _
                                   Integer, _
                                   ByVal dwRop As System.Int32) As Boolean
    End Function
 
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As _
      System.EventArgs) Handles Button1.Click
        img = MakeScreenShot(Me)
        pd = New PrintDocument
        pd.Print()
    End Sub
 
    Private Sub pd_PrintPage(ByVal sender As Object, ByVal e As _
      PrintPageEventArgs) Handles pd.PrintPage
        Dim x As Integer = e.MarginBounds.X
        Dim y As Integer = e.MarginBounds.Y
        e.Graphics.DrawImage(img, x, y)
        e.HasMorePages = False
    End Sub
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Panel mit Controls ausdrucken??919bluejey16.01.06 13:23
Re: Panel mit Controls ausdrucken??617Maywood17.01.06 11:56
Re: Panel mit Controls ausdrucken??562bluejey17.01.06 16:08
Re: Panel mit Controls ausdrucken??540ModeratorFZelle17.01.06 13:31

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