Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi DBGrid ausdrucken (https://www.delphipraxis.net/120155-dbgrid-ausdrucken.html)

Thomas F 7. Sep 2008 15:02

Re: DBGrid ausdrucken
 
Hab ich doch, dann erhält man die Meldung :

unit rpmdprotocol;

Undefinierter Bezeichner:'WriteStream'

Delphi-Quellcode:

AConnection.WriteStream(memstream,true,true);

mkinzler 7. Sep 2008 15:04

Re: DBGrid ausdrucken
 
Die Version für deine Delphiversion (D10)?

Thomas F 7. Sep 2008 16:36

Re: DBGrid ausdrucken
 
Zitat:

Zitat von mkinzler
Die Version für deine Delphiversion (D10)?

reportman2_7e
Ist egal, ich hab meine Druckvorschau jetzt fast fertig.
Nur noch ein paar Kleinigkeiten
Ich weiß nur nicht, warum der Testdruck so unscharf und undeutlich ist,aber im Prinzip funktionierts.
Delphi-Quellcode:
.
.
.
type
  TForm5 = class(TForm)
    Panel1: TPanel;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    Druckvorschau: TImage;
    BitBtn4: TBitBtn;
    procedure FormShow(Sender: TObject);
    procedure Vorschau_Texteingabe ;
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
.
.
.
procedure TForm5.BitBtn1Click(Sender: TObject);
Var rect:TRect;
begin
Printer.BeginDoc;
with printer.Canvas do begin
rect:=Bounds(0,0,printer.PageWidth,printer.PageHeight);
stretchdraw(Rect,DruckVorschau.Picture.Bitmap);
 end;
printer.enddoc ;

end;

procedure TForm5.FormShow(Sender: TObject);

begin
 Panel1.Width:=Form5.Width;

Druckvorschau.ClientHeight:=594;
Druckvorschau.ClientWidth:=420;
Druckvorschau.Left:=(screen.WorkAreaWidth div 2) -210;
Druckvorschau.Top := 80;
Druckvorschau.Canvas.Font.Size:=6;
Druckvorschau.Canvas.TextOut(20,30,'Testdruck');
Vorschau_Texteingabe ;
end;
procedure TForm5.Vorschau_Texteingabe  ;
begin

Druckvorschau.Canvas.TextOut(20,50,(Form1.Clientdataset1Feld1.asstring));
.
.

end;

Thomas F 7. Sep 2008 20:21

Re: DBGrid ausdrucken
 
Ich hab das etwas abgeändert, trotzdem bleibt die Textausgabe unscharf,

wenn man von TImage.canvas direkt auf Printer.Canvas ausdruckt :coder2:

Delphi-Quellcode:
procedure TForm5.BitBtn1Click(Sender: TObject);
Var rect,rect1:TRect;
begin
rect1:=Bounds(0,0,Druckvorschau.width,Druckvorschau.height);
Rect:=Bounds(0,0,Printer.PageWidth,printer.PageHeight);
Printer.BeginDoc;
with printer.Canvas do begin
printer.Canvas.CopyRect(Rect,DruckVorschau.Canvas,Rect1);
 end;
printer.enddoc ;

end;
Wahrscheinlich muss man das irgendwie anders machen :gruebel:
Vielleicht weiss das einer von euch ? :roll:

Thomas F 8. Sep 2008 14:19

Re: DBGrid ausdrucken
 
Jetzt funktioniert es :-D

Nur wenn man mit dem Zoom die Druckvorschau verkleinert,

ist die Schrift etwas unleserlich, aber das ist ,glaub ich, ganz normal.

Thomas F 11. Sep 2008 14:19

Re: DBGrid ausdrucken
 
Hallo,

ich nochmal ein kleines Problem

Wie kann ich von der Datenbank nur die Felder anzeigen lassen die im Feld1 den Wert "XY" haben ?
Delphi-Quellcode:
Clientdataset1.Fieldbyname('Feld1').asString := 'XY';

christian_u 11. Sep 2008 14:29

Re: DBGrid ausdrucken
 
Eh du diese workaround spielchen mit den Turbo Delphis treibst kannst du auch gleich Lazarus nehmen da kannst du alles visuell benutzen und Freereport heisst dort lazreport ist sogar etwas stabiler und weiter entwickelt und auch noch plattformübergreifend benutzbar.

Thomas F 11. Sep 2008 14:40

Re: DBGrid ausdrucken
 
Zitat:

Zitat von christian_u
Eh du diese workaround spielchen mit den Turbo Delphis treibst kannst du auch gleich Lazarus nehmen da kannst du alles visuell benutzen und Freereport heisst dort lazreport ist sogar etwas stabiler und weiter entwickelt und auch noch plattformübergreifend benutzbar.

Jetzt hab ich aber schon so weit gemacht, läßt sich nicht mehr ändern
Oder meinst du ich fang jetzt wieder vor vorne an ?
Muß nur noch wissen, wie man die Felder sortiert

Delphi-Quellcode:
Clientdataset1.Fieldbyname('Feld1').asString := 'XY';

Thomas F 11. Sep 2008 15:11

Re: DBGrid ausdrucken
 
Ich habs schon gefunden, hier stehts ja

http://www.delphipraxis.net/internal...=clientdataset


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:15 Uhr.
Seite 3 von 3     123   

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