Fórum QuickReport como colocar numero de pagina assim Pagina 1/3 #170457
21/07/2003
0
Página 1/3, onde 1 é a página atual e 3 é o total de páginas.
Weber
Curtir tópico
+ 0Posts
03/06/2004
Lucas Silva
Alguem sabe?
Gostei + 0
03/06/2004
Xanatos
Espero ajudar...
Gostei + 0
03/06/2004
Xanatos
qrPreview1.PageNumber := qrPreview1.PageNumber+1;
Edit1.Text := Inttostr(qrPreview1.PageNumber);
:evil:
Gostei + 0
03/06/2004
Lucas Silva
Quando eu coloco este código no relatório, ele mostra o número da página autal.
Gostei + 0
03/06/2004
Fabio.hc
var ContPagina:integer; procedure TForm1.QuickRep1StartPage(Sender: TCustomQuickRep); begin inc(ContPagina); end; procedure TForm1.Button1Click(Sender: TObject); begin ContPagina := 0 ; QuickRep1.Prepare; QrLabel1.Caption := IntToStr(ContPagina); QuickRep1.Preview; end;
Gostei + 0
03/06/2004
Lucas Silva
Dei uma melhorada nela..
QuickRep1.Prepare; QrLabel1.Caption := IntToStr(quickReport1.qrPrinter.pageCount) QuickRep1.Preview;
Gostei + 0
03/06/2004
Valdir.santos
unit Preview;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, StdCtrls, QuickRpt, Buttons, ComCtrls, Spin, QRPrntr, QRCtrls;
type
TfrmPreview = class(TForm)
Panel1: TPanel;
QRPreview1: TQRPreview;
StatusBar: TStatusBar;
ProgressBar: TProgressBar;
lblAguarde: TLabel;
btnZoomIn: TSpeedButton;
btnZoomOut: TSpeedButton;
Label1: TLabel;
btnClose: TSpeedButton;
btnPrint: TSpeedButton;
btnPrimeira: TSpeedButton;
btnPrevPage: TSpeedButton;
btnNextPage: TSpeedButton;
btnUltima: TSpeedButton;
spePaginas: TSpinEdit;
speZoom: TSpinEdit;
procedure btnPrintClick(Sender: TObject);
procedure btnPrevPageClick(Sender: TObject);
procedure btnNextPageClick(Sender: TObject);
procedure btnZoomOutClick(Sender: TObject);
procedure btnCloseClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormShow(Sender: TObject);
procedure QRPreview1PageAvailable(Sender: TObject; PageNum: Integer);
procedure FormCreate(Sender: TObject);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure StatusBarDrawPanel(StatusBar: TStatusBar;
Panel: TStatusPanel; const Rect: TRect);
procedure QRPreview1ProgressUpdate(Sender: TObject; Progress: Integer);
procedure btnPrimeiraClick(Sender: TObject);
procedure btnUltimaClick(Sender: TObject);
procedure btnZoomInClick(Sender: TObject);
procedure spePaginasChange(Sender: TObject);
procedure speZoomChange(Sender: TObject);
private
{ Private declarations }
procedure UpdateButtons;
public
{ Public declarations }
sStatus: String;
end;
var
frmPreview: TfrmPreview;
implementation
uses Funcoes;
{$R *.DFM}
procedure TfrmPreview.UpdateButtons;
begin
with QRPreview1 do begin
btnPrimeira.Enabled := PageNumber > 1;
btnPrevPage.Enabled := PageNumber > 1;
btnNextPage.Enabled := PageNumber < QRPreview1.QRPrinter.PageCount;
btnUltima.Enabled := PageNumber < QRPreview1.QRPrinter.PageCount;
spePaginas.Value := PageNumber;
end;
StatusBar.Panels[0].Text := sStatus;
StatusBar.Panels[1].Text :=
´Pág. ´ + IntToStr(QRPreview1.PageNumber) + ´ de ´ +
IntToStr(QRPreview1.QRPrinter.PageCount);
end;
procedure TfrmPreview.btnPrintClick(Sender: TObject);
begin
with QRPreview1.QRPrinter do begin
PrintSetup;
if Master.Tag = 0 then
Print;
end;
end;
procedure TfrmPreview.btnPrevPageClick(Sender: TObject);
begin
Application.ProcessMessages;
with QRPreview1 do
if PageNumber > 1 then
PageNumber:=PageNumber-1;
UpdateButtons;
end;
procedure TfrmPreview.btnNextPageClick(Sender: TObject);
begin
Application.ProcessMessages;
with QRPreview1 do
if PageNumber < QRPreview1.QRPrinter.PageCount then
PageNumber:=PageNumber+1;
UpdateButtons;
end;
procedure TfrmPreview.btnZoomOutClick(Sender: TObject);
begin
Application.ProcessMessages;
with QRPreview1 do
if Zoom > 10 then
Zoom := Zoom - 5;
speZoom.Value:=QRPreview1.Zoom;
end;
procedure TfrmPreview.btnCloseClick(Sender: TObject);
begin
Close;
end;
procedure TfrmPreview.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
frmPreview:=nil;
end;
procedure TfrmPreview.FormShow(Sender: TObject);
begin
lblAguarde.Left:=(Screen.Width div 2)-(lblAguarde.Width div 2);
lblAguarde.Top:=(Screen.Height div 2)-60;
QRPreview1.SetFocus;
ActiveControl:=nil;
end;
procedure TfrmPreview.QRPreview1PageAvailable(Sender: TObject;
PageNum: Integer);
begin
Caption:=´Relatório - ´+IntToStr(PageNum)+´ página´;
if PageNum > 1 then
Caption:=Caption+´s´;
spePaginas.MaxValue := PageNum;
case QRPreview1.QRPrinter.Status of
mpReady : sStatus := ´Pronto´;
mpBusy : sStatus := ´Processando´;
mpFinished :
begin
sStatus := ´Concluído´;
lblAguarde.Visible:=False;
speZoom.Value:=QRPreview1.Zoom;
end;
end;
UpdateButtons;
end;
procedure TfrmPreview.FormCreate(Sender: TObject);
begin
// Put the progress bar on the statusbar
ProgressBar.Parent := StatusBar;
end;
procedure TfrmPreview.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
// Let the user navigate through the preview by the keyboard
case Key of
VK_DOWN : with QRPreview1.VertScrollBar do
Position := Position + 30; // trunc(Range / 10);
VK_UP : with QRPreview1.VertScrollBar do
Position := Position - 30; // trunc(Range / 10);
VK_LEFT : with QRPreview1.HorzScrollBar do
Position := Position - 30; // trunc(Range / 10);
VK_RIGHT : with QRPreview1.HorzScrollBar do
Position := Position + 30; // trunc(Range / 10);
VK_NEXT : with QRPreview1.VertScrollBar do
Position := Position + 60;
VK_PRIOR : with QRPreview1.VertScrollBar do
Position := Position - 60;
VK_HOME :
begin
QRPreview1.PageNumber := 1;
Application.ProcessMessages;
UpdateButtons;
end;
VK_END :
begin
QRPreview1.PageNumber := QRPreview1.QRPrinter.PageCount;
Application.ProcessMessages;
UpdateButtons;
end;
VK_ESCAPE: btnCloseClick(Self);
end;
end;
procedure TfrmPreview.StatusBarDrawPanel(StatusBar: TStatusBar;
Panel: TStatusPanel; const Rect: TRect);
var
aRect: TRect;
begin
if Panel = StatusBar.Panels[2] then begin
aRect := Rect;
InflateRect(aRect, 1, 1);
ProgressBar.BoundsRect := aRect;
end;
end;
procedure TfrmPreview.QRPreview1ProgressUpdate(Sender: TObject;
Progress: Integer);
begin
ProgressBar.Position := Progress;
if (Progress = 0) or (Progress = 100) then
ProgressBar.Position := 0;
end;
procedure TfrmPreview.btnPrimeiraClick(Sender: TObject);
begin
Application.ProcessMessages;
QRPreview1.PageNumber:=1;
UpdateButtons;
end;
procedure TfrmPreview.btnUltimaClick(Sender: TObject);
begin
Application.ProcessMessages;
with QRPreview1 do
if PageNumber < QRPrinter.PageCount then
PageNumber := QRPrinter.PageCount;
UpdateButtons;
end;
procedure TfrmPreview.btnZoomInClick(Sender: TObject);
begin
Application.ProcessMessages;
with QRPreview1 do
Zoom := Zoom + 5;
speZoom.Value:=QRPreview1.Zoom;
end;
procedure TfrmPreview.spePaginasChange(Sender: TObject);
begin
Application.ProcessMessages;
QRPreview1.PageNumber:=spePaginas.Value;
UpDateButtons;
end;
procedure TfrmPreview.speZoomChange(Sender: TObject);
begin
Application.ProcessMessages;
QRPreview1.Zoom:=speZoom.Value;
end;
end.
Gostei + 0
03/06/2004
Aroldo Zanela
Outra forma: http://delphiforum.icft.com.br/forum/viewtopic.php?p=21427#21427
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)