Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Drucken der Programm Oberfläche (https://www.delphipraxis.net/118406-drucken-der-programm-oberflaeche.html)

foofighter85 7. Aug 2008 10:21


Drucken der Programm Oberfläche
 
hab bei meinem programm jetzt auch die Option PrintDialog eingefugt und es wird auch das Fenster geöffnet für den Dialog...jedoch wenn ich auf "Drucken" klicke passiert nichts.
Gedruckt werden soll lediglich die Oberfläche des Programms.

hab das ganze bis jetzt nur soweit realisiert, da ich sonst keine Ahnung habe vom Drucken bei Delphi.

procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
PrintDialog1.Execute;
end;


wäre cool, wenn mir jemand weiterhelfen könnte

SaFu 7. Aug 2008 10:23

Re: Drucken der Programm Oberfläche
 
Dein Printdialog ist dafür da um dir deinen Drücker zu wählen, den kannst aber auch rauswerfen und einfach nur

Delphi-Quellcode:
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
Form1.Print;
end;
Probieren :zwinker:

Gruß Sascha

DeddyH 7. Aug 2008 10:24

Re: Drucken der Programm Oberfläche
 
In welchem Thread soll es denn nun weitergehen?

SaFu 7. Aug 2008 10:28

Re: Drucken der Programm Oberfläche
 
@DaddyH
Jetzt hast du Ihn verschreckt und er ist abgehauen :mrgreen:

DeddyH 7. Aug 2008 10:33

Re: Drucken der Programm Oberfläche
 
BTW:
Zitat:

Zitat von fuknersascha
Delphi-Quellcode:
procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
Form1.Print;
end;

Besser keine benannten Instanzen verwenden, sondern entweder
Delphi-Quellcode:
self.Print;
oder einfach nur
Delphi-Quellcode:
Print;

foofighter85 7. Aug 2008 10:35

Re: Drucken der Programm Oberfläche
 
wird das denn auch direkt zurechtgeschnitten für eine DINA4 Seite ?
hab das jetzt probiert und das ist nicht alles komplett drauf

DeddyH 7. Aug 2008 10:36

Re: Drucken der Programm Oberfläche
 
Da wird nichts zugeschnitten, das musst Du schön alles selbst ausrechnen.

foofighter85 7. Aug 2008 10:38

Re: Drucken der Programm Oberfläche
 
und wie kann ich da vorgehen? also meine oberfläche hat die Maße 930 x 1400

DeddyH 7. Aug 2008 10:47

Re: Drucken der Programm Oberfläche
 
Das ist nicht ganz trivial. Deine Maße sind in Pixeln, der Drucker gibt Dir auf Anfrage seinen druckbaren Bereich in 1/10 mm zurück. Eins von beiden musst Du also ins andere Format konvertieren (z.B. mit Hier im Forum suchenSetMapMode). Danach musst Du Dir ausrechnen, um welchen Faktor Du das Bild ggf. verkleinern musst und dies dann tun (Hier im Forum suchenStretchBlt). Anschließend kannst Du das Bild ausdrucken, indem Du es auf der Zeichenfläche (Canvas) des Druckers ausgibst.

[edit] Eins von vielen Tutorials zu TPrinter habe ich gerade hier gefunden. [/edit]

foofighter85 7. Aug 2008 11:01

Re: Drucken der Programm Oberfläche
 
hab das nun so gelöst....


procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
PrintDialog1.Execute;
Form1.PrintScale := poPrintToFit;
Form1.Print;
end;


kann ich das nun noch auf querformat umstellen oder geht das nur über PrinterSetupDialog?


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:44 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz