Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi DBGrid Drucken ?! (https://www.delphipraxis.net/171389-dbgrid-drucken.html)

Davidlocke13 5. Nov 2012 11:40

AW: DBGrid Drucken ?!
 
in ein StringGrid kann ich keine DataSource laden

Bummi 5. Nov 2012 12:17

AW: DBGrid Drucken ?!
 
Bis auf Cells wäre beim DBgrid alles zugreifbar (entsprechen veröffentlicht).
Trotzdem halte ich den Ansatz über das Gitter gehen zu wollen für weniger geeignet
Vielleicht kannst Du damit was anfangen .. http://stackoverflow.com/questions/7...498676#7498676

Davidlocke13 6. Nov 2012 16:28

AW: DBGrid Drucken ?!
 
Kann damit leider nichts anfangen !

Davidlocke13 7. Nov 2012 10:41

AW: DBGrid Drucken ?!
 
Code:
procedure TForm1.BtnDruckenClick(Sender: TObject);

var rect,rect1: TRect;
begin
   rect:=bounds(0,0,DBGrid1.clientwidth,DBgrid1.Clientheight);
   rect1:=bounds(10,10,Printer.PageHeight,Printer.PageWidth);


if printdialog1.Execute then
begin

printer.begindoc;
printer.canvas.CopyRect(rect1,dbgrid1.Canvas,rect);
printer.enddoc;

end;
end;
So habe das mal ausprobiert ! Druck zwar was aber nicht im richtigen Format

Sir Rufo 7. Nov 2012 10:59

AW: DBGrid Drucken ?!
 
Wenn du das etwas genauer spezifizieren könntest "nicht im richtigen Format"?

Davidlocke13 7. Nov 2012 11:14

AW: DBGrid Drucken ?!
 
Liste der Anhänge anzeigen (Anzahl: 1)
Anhang 38013

So macht der das !

Davidlocke13 7. Nov 2012 11:18

AW: DBGrid Drucken ?!
 
Liste der Anhänge anzeigen (Anzahl: 1)
und das sollte drauf !

Anhang 38014

Bummi 7. Nov 2012 11:22

AW: DBGrid Drucken ?!
 
Copyrect kopiert einfach unskaliert auf das Canvas, was Du suchst dürfte so ähnlich aussehen
Delphi-Quellcode:
procedure TForm1.BtnDruckenClick(Sender: TObject);
var
    rect,rect1: TRect;
    bmp:TBitMap;
begin
   bmp:=TBitMap.Create;
   bmp.Width := DBGrid1.clientwidth;
   bmp.Height := DBGrid1.Clientheight;
   try
   rect:=bounds(0,0,DBGrid1.clientwidth,DBgrid1.Clientheight);
   // >> wobei hier noch verhältnisanpassungen fehlen
   rect1:=bounds(10,10,Printer.PageHeight,Printer.PageWidth);
   bmp.canvas.CopyRect(rect,DBGrid1.Canvas,rect);
      if printdialog1.Execute then
      begin

      printer.begindoc;
      printer.canvas.Canvas.StretchDraw(rect1,bmp);
      printer.enddoc;

      end;
   finally
     bmp.Free;
   end;
end;

Sir Rufo 7. Nov 2012 11:30

AW: DBGrid Drucken ?!
 
@bummi genau, denn ansonsten müsste man um ein Bild vom Mount Everest auszudrucken ein Papier mit 8848m Höhe haben (von der Breite mal ganz zu schweigen) ;)

Davidlocke13 7. Nov 2012 11:31

AW: DBGrid Drucken ?!
 
" // >> wobei hier noch verhältnisanpassungen fehlen"
und wie mache ich die ?


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:28 Uhr.
Seite 2 von 3     12 3      

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