Veröffentlicht 24. Februar 200421 j Wie komme ich an den Inhalt des VB 6 Printer-Objekts? Ich benötige den gesamten Inhalt als Bild. Kommt man da vielleicht mit der Eigenschaft "hDC" mit einer Windows API dran?
26. Februar 200421 j Was genau meinst Du? Vielleicht postest Du mal ein Ausriss aus Deinem Quellcode mit der entsprechenden Stelle und genauer Spezifikation was geschehen soll.
26. Februar 200421 j Einen Quellcode habe ich noch nicht, den suche ich ja eben. Ich möchte eine Druckvorschau programmieren. Auf der Zeichenfläche des Printer-Objekts kann man ja beliebige Zeichenoperationen ausführen, die auch in Picture-Controls oder Formularen möglich sind (Circle, Line und FontSize, FontBold, etc.). Bei einem Formular oder Bildfeld gibt es die Eigenschaft Image, die die Zeichenfläche enthält. Beim Printer Objekt gibt es sowas leider nicht. Aber es gibt den hDC (Gerätekontext), eventuell kann man damit ja was machen (Windows APIs?). Ich habe es jetzt schon mit der BitBlt API versucht, aber damit klappt es nicht.
26. Februar 200421 j Eine Art Vorschau kannst Du mit einem Picture-, oder Imageobjekt realisieren, indem Du die zu druckenden Elemente (Du solltest Sie ansprechen können, z.B. ein Bild, oder irgendwelche Formen) vor dem Druck auf ein kleines Picture/Imageobjekt ausgibst. z.B. um ein Bild das im Imageobjekt imgAnzeige angezeigt wird im Imageobject imgVorschau verkleinert anzuzeigen: Private Sub btnVorschau_Click() imgVorschau.Picture = imgAnzeige.Picture 'Bild aus imgAnzeige in imgVorschau laden imgVorschau.Stretch = True 'imgVorschau soll sich dehnen können imgVorschau.Width = 2000 'vordefinierter Wert für die Breite der Vorschau imgVorschau.Height = 2000 'vordefinierter Wert für die Höhe der Vorschau End Sub
26. Februar 200421 j Das ist natürlich eine Möglichkeit, die ich auch verwenden werde, falls es nicht anders möglich ist. Aber das was ich eigentlich wollte ist ja eine Vorschau des Inhalts des Printer Objekts. Aber trotzdem danke!
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.