Thema: Delphi Stringgrid drucken

Einzelnen Beitrag anzeigen

Fever22

Registriert seit: 9. Jun 2008
4 Beiträge
 
#9

Re: Stringgrid drucken

  Alt 10. Jan 2009, 10:01
Also ich hab die Funktion bei mir auch erfolgreich eingebaut doch da mit mehreren Druckern gearbeitet wird müsste eine Druckerauswahl her. Hab hier im Forum auch nen Beispielcode gefunden. Aber mir fehlt noch der Ansatz für eine Implementierung.

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender:TObject);

var
  I, Start, Stop: Integer;
begin
PrintDialog1.Options := [poPageNums, poSelection];
PrintDialog1.FromPage := 1;
PrintDialog1.MinPage := 1;
PrintDialog1.ToPage := PageControl1.PageCount;
PrintDialog1.MaxPage := PageControl1.PageCount;
if PrintDialog1.Execute then
  begin
    { Ausgewählten Druckbereich ermitteln }
    with PrintDialog1 do
    begin
      if PrintRange = prAllPages then

        begin
        Start := MinPage - 1;
        Stop := MaxPage - 1;
      end
      else if PrintRange = prSelection then
      begin
        Start := PageControl1.ActivePage.PageIndex;
        Stop := Start;
        end
      else { PrintRange = prPageNums }
      begin
        Start := FromPage - 1;
        Stop := ToPage - 1;
      end;
    end;
    { Jetzt die Seiten drucken }

    with Printer do
    begin
      BeginDoc;
      for I := Start to Stop do
      begin
        PageControl1.Pages[I].PaintTo(Handle, 10, 10);
        if I <> Stop then
          NewPage;
      end;
      EndDoc;
    end;
  end;

end;
  Mit Zitat antworten Zitat