AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi StrinGrid mit Linien über Ravereport ausdrucken.
Thema durchsuchen
Ansicht
Themen-Optionen

StrinGrid mit Linien über Ravereport ausdrucken.

Ein Thema von Code · begonnen am 3. Feb 2008 · letzter Beitrag vom 4. Feb 2008
Antwort Antwort
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, 18: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
grenzgaenger
(Gast)

n/a Beiträge
 
#2

Re: StrinGrid mit Linien über Ravereport ausdrucken.

  Alt 3. Feb 2008, 18:51
mal ins blaue hinein geschossen

Delphi-Quellcode:
procedure TForm4.RvSystem1Print(Sender: TObject);
var
     I: Integer;
     RP1: TBaseReport;

     procedure PHeader(const rp1: TBaseReport);
     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(rp1) // *** Seitenkopf
          for I := 1 to StringGrid1.RowCount - 1 do
          begin
               if LinesLeft < 5 then // Neue Seite
               begin
                    NewPage;
                    PHeader(rp1);
               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;
probier es mal so ...
  Mit Zitat antworten Zitat
Code

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

Re: StrinGrid mit Linien über Ravereport ausdrucken.

  Alt 3. Feb 2008, 19:14
Zitat von grenzgaenger:
mal ins blaue hinein geschossen
probier es mal so ...
Vielen Dank für die Mühe. Aber leider keine Änderung. Darstellung bleibt die Gleiche. Ne Gute Sache der Ravereport, aber an so kleine Sachen scheitert es dann bei mir.

Gruß
Klaus
  Mit Zitat antworten Zitat
grenzgaenger
(Gast)

n/a Beiträge
 
#4

Re: StrinGrid mit Linien über Ravereport ausdrucken.

  Alt 3. Feb 2008, 19:38
tja, der scheint nicht mitzubekommen, dass die tabstops gesetzt sind...

müsst mir das mal genauer ansehen...

andere möglichkeit wäre printxy... da bräuchtest keine tabstops mehr...
  Mit Zitat antworten Zitat
Code

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

Re: StrinGrid mit Linien über Ravereport ausdrucken.

  Alt 4. Feb 2008, 08:39
Zitat von grenzgaenger:
tja, der scheint nicht mitzubekommen, dass die tabstops gesetzt sind...

müsst mir das mal genauer ansehen...

andere möglichkeit wäre printxy... da bräuchtest keine tabstops mehr...
Mit printxy Hatte ich auch schon daran gedacht, nur ist mir nicht bekannt wie ich dann die Linien zeichnen soll?

Gruß
Klaus
  Mit Zitat antworten Zitat
Code

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

Re: StrinGrid mit Linien über Ravereport ausdrucken.

  Alt 4. Feb 2008, 13:52
Ich habe jetzt selbst den Fehler raus gefunden. Für Alle die es interessiert
Delphi-Quellcode:
.
               ClearTabs;
               SetTab (SectionLeft, pjCenter, 1.0, 5, BoxLineAll, 5);
               SetTab (NA, pjCenter, 1.0, 0, BoxLineAll, 5);
               SetTab (NA, pjCenter, 1.0, 0, BoxLineAll, 5);
               SetTab (NA, pjCenter, 1.0, 0, BoxLineAll, 5);
               SetTab (NA, pjCenter, 1.0, 0, BoxLineAll, 5);
               SetTab (NA, pjCenter, 1.0, 0, BoxLineAll, 5);
Mit diesen Abänderungen klappt es prima.

Gruß
Klaus
  Mit Zitat antworten Zitat
grenzgaenger
(Gast)

n/a Beiträge
 
#7

Re: StrinGrid mit Linien über Ravereport ausdrucken.

  Alt 4. Feb 2008, 22:55
wunderbar

zum pinseln brauchst du nur die richtigen funktionen wählen .. Beispiel einfach auf die codevervollständigung drücken und die richtigen funktionen zum linienzeichnen auswählen... oder schau einfach mal nach codebasedprinting auf nevrona.. da gibts genügend beispiele, wie z.b. auch grafiken millimetergenau auf das papier gebracht werden können

grüsse und noch einen schönen abend
GG
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:46 Uhr.
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