Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Keine Seitenanzahl bei FastReport (https://www.delphipraxis.net/149191-keine-seitenanzahl-bei-fastreport.html)

LingNeu 16. Mär 2010 10:45


Keine Seitenanzahl bei FastReport
 
Hallo Delphifreunde,
habe seit einiger Zeit den Fastreport 4.
Wollte mir ein eigenes Print-Preview machen. Geht auch soweit alles, bis auf die Seitenzahl und Gesamtseitenzahl-Anzeige.
Der Report hat 3 Seiten. Habe für den Test nur einen Speedbutton angegeben.
Vielleicht kann mir bitte jemand dabei helfen - ich schaffe diese Sache einfach nicht.
Hier der Code

Delphi-Quellcode:
procedure TForm4.FormCreate(Sender: TObject);
begin
frxReport1.LoadFromFile('4000.fr3');
frxReport1.PreviewOptions.ZoomMode := zmPageWidth; //darstellung auf papierbreite
frxReport1.Preview := frxPreview1;
if frxReport1.PrepareReport then frxReport1.ShowPreparedReport;

//lbl_page.Caption := inttostr(frxReport1.PagesCount);       //zeigt immer 2 an obwohl 3 Seiten sind
lbl_page.Caption := inttostr(frxReport1.PreviewPages.CurPage); //zeigt nur 1 an
end;

procedure TForm4.Prn_btn_priorClick(Sender: TObject);
begin
frxPreview1.Next ;
lbl_page.Caption := inttostr(frxReport1.PreviewPages.CurPage); //zeigt immer 1 an
end;
Wäre sehr dankbar für eine Hilfe oder Hinweis
ciao
LingNeu

hoika 16. Mär 2010 11:50

Re: Keine Seitenanzahl bei FastReport
 
Hallo,

siehe hier
FastReport Pages.Count

und die Antwort von MrSpock.


Heiko

LingNeu 16. Mär 2010 14:34

Re: Keine Seitenanzahl bei FastReport
 
danke hoika
für den hinweis. Leider kann ich damit nichts anfangen. Die paar Zeilen Code kann ich nirgends in meinem Code unterbringen.
Ich spreche auch keine groupband an. Beim Autor kommt es zum Einsatz von "if Engine.FinalPass then ...". Leider habe ich keine "Engine"
Beim Erstellen des Reports hatte ich eine Groupband. Aber nun brauche ich meinen eigenen Preview.

Der mitgelieferte läuft ja einwandfrei.
Hier der dazugehörige Code
Delphi-Quellcode:
procedure TForm1.btn_TDruckClick(Sender: TObject);
begin
frxReport1.LoadFromFile('4000.fr3');
frxReport1.PrepareReport;
if frxReport1.PrepareReport then
frxReport1.ShowPreparedReport; // Standard-Preview funktioniert einwandfrei
end;
Aber in meinem eigenen Preview habe ich mir mehrere Speedbuttons angelegt, da ich einen eigenen Skin verwenden muss und der fertige Preview nur die Standard-Windows-Darstellung hat.

Vielleicht hat doch noch jemand eine Idee.
Danke für die Mühe
ciao
LingNeu

hoika 16. Mär 2010 14:58

Re: Keine Seitenanzahl bei FastReport
 
Hallo,

es ging mehr darum, dass du ein Two-Pass-Reporting einstellen musst.
Woher soll der Report bei Seize 2 wissen, dass z.B. noch 1 Seite kommt ?

Engine = deine Report-Variable (frxReport1)

Laut Google gibt es frxReport1.DoublePass

Und erst in frxReport1.FinalPass steht die Gesamt-Seitenzahl.


Such mal im FastReport-Handbuch nach "total number of pages".



Heiko

LingNeu 16. Mär 2010 16:26

Re: Keine Seitenanzahl bei FastReport
 
hallo hoika,
prima!!! Es funktioniert wirklich. Du hattest Recht - es muss der Doppelpass gemacht werden (hoppala - das klingt wie Fussball)
Jedenfalls klappt die Sache prima
Danke Dir nochmals!
ciao
LingNeu


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:41 Uhr.

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