Einzelnen Beitrag anzeigen

Code

Registriert seit: 24. Aug 2007
Ort: Bochum
167 Beiträge
 
Delphi 2007 Professional
 
#1

StrinGrid mit Linien über Ravereport ausdrucken.

  Alt 3. Feb 2008, 19:17
Hallo Alle.

Ich möchte ein StrinGrid mit Linien mit dem Ravereport ausdrucken. Im Prinzip klappt das ganze, nur der Text ist nicht da wo er hingehört.

Ich benutze diesen Code. Was mache ich da falsch, ich komme nicht darauf.
Delphi-Quellcode:
      procedure TForm4.RvSystem1Print(Sender: TObject);
var
     I: Integer;
     RP1: TBaseReport;

     procedure PHeader;
     begin
          with RP1 do
          begin
               Home;
               // *** Seiteneinstellung
               SectionLeft := 0.5;
               SectionRight := PageWidth - 0.5;
               SectionTop := 1.0;
               SectionBottom := PageHeight - 1.5;

               SetFont ('Arial', 16);
               FontColor := clNavy;
               Bold := True;
               PrintCenter ('Raumverwaltung', PageWidth / 2);
               Bold := False;
               NewLine;
               NewLine;
               SetFont ('Arial', 12);
               FontColor := clBlack;

               ClearTabs;
               SetTab (SectionLeft, pjCenter, 1.0, 5, BoxLineAll, 5);
               SetTab (SectionLeft, pjCenter, 2.2, 5, BoxLineAll, 5);
               SetTab (SectionLeft, pjCenter, 3.4, 5, BoxLineAll, 5);
               SetTab (SectionLeft, pjCenter, 4.6, 5, BoxLineAll, 5);
               SetTab (SectionLeft, pjCenter, 5.8, 5, BoxLineAll, 5);
               SetTab (SectionLeft, pjCenter, 7.0, 5, BoxLineAll, 5);
               SetTab (NA, pjCenter, PageWidth - 2, 5, BoxLineAll, 5);

               Bold := True;
               PrintTab ('Raum');
               PrintTab ('belegt');
               PrintTab ('von');
               PrintTab ('bis');
               PrintTab ('als');
               PrintTab ('Bemerkung');
               Bold := False;
               NewLine;

          end;
     end;
begin
     RP1 := Sender as TBaseReport;
     with RP1 do
     begin
          PHeader; // *** Seitenkopf
          for I := 1 to StringGrid1.RowCount - 1 do
          begin
               if LinesLeft < 5 then // Neue Seite
               begin
                    NewPage;
                    PHeader;
               end;
               PrintTab (StringGrid1.Cells[1,I]);
               PrintTab (StringGrid1.Cells[2,I]);
               PrintTab (StringGrid1.Cells[3,I]);
               PrintTab (StringGrid1.Cells[4,I]);
               PrintTab (StringGrid1.Cells[5,I]);
               PrintTab (StringGrid1.Cells[6,I]);
               NewLine;
          end;
     end;
end;
Miniaturansicht angehängter Grafiken
raumverwaltung_114.jpg  
  Mit Zitat antworten Zitat