TerraSkilll
Zumbi
Moderador
4K Mensagens
1.2K Curtidas
Você diz que o relatório, quando é exibido, não rola usando o scroll do mouse? Não tenho como testar aqui, mas suponho que seja um problema do Quickreport mesmo, porque é ele quem exibe o relatório. Corrigir isso talvez envolva modificar o próprio Quickreport ou alguma outra técnica não muito elegante (como simular o uso da barra de rolagem quando o mouse é rolado).
Abraço.
Contribua para um fórum melhor: pense antes de postar.
"It isn't a contest. Just enjoy the ride." -> Seth Vidal
Hardware.com.br no Youtube!
Lucio Campet...
Membro Junior
Registrado
92 Mensagens
0 Curtidas
Você diz que o relatório, quando é exibido, não rola usando o scroll do mouse? Não tenho como testar aqui, mas suponho que seja um problema do Quickreport mesmo, porque é ele quem exibe o relatório. Corrigir isso talvez envolva modificar o próprio Quickreport ou alguma outra técnica não muito elegante (como simular o uso da barra de rolagem quando o mouse é rolado).
Abraço.
Encontrei este codigo na net. (planetadelphi)
O que e esta classe tqrPrinter e como implementa-la.
Quando compilo com f9 da erro na linha TQRStandardPreview.
So que da erro aonde esta em vermelho.
Acredito que seja algo que nao estou implementando no codigo do form.
[CODE=rich]
Essa dica é para dar uma opção de rolagem no relatório do QuickReport ou para quem usa também a classe TQRPrinter.
1 - para traduzir seu relatório coloque essa função no beforeprint:
procedure TF_TFtApl.QuickRep1BeforePrint(Sender: TCustomQuickRep;
var PrintReport: Boolean);
begin
// Configurar o Preview...
SetupStandardPreview('Visualizaçao do Relatório '+QuickRep1.ReportTitle);
end;
2 - E na função escreva o seguinte:
{ Redefine hints de botoes e o caption da janela de preview }
procedure SetupStandardPreview(PreviewTitle: String);
begin
with TQRStandardPreview(Application.FindComponent('QRStandardPreview')) do
begin
ZoomFit.Hint := 'Janela Inteira';
Zoom100.Hint := 'Zoom';
ZoomToWidth.Hint := 'Largura da Página';
FirstPage.Hint := 'Primeira Página';
PreviousPage.Hint := 'Página Anterior';
ToolButton2.Hint := 'Próxima Página';
LastPage.Hint := 'Ultima Página';
PrintSetup.Hint := 'Configurar Impressora';
Print.Hint := 'Imprimir';
SaveReport.Hint := 'Salvar relatório';
LoadReport.Hint := 'Abrir relatório salvo previamente';
ExitButton.Caption := '&Fechar';
ExitButton.Width := 60;
ExitButton.Hint := 'Fechar tela de visualização';
Caption := PreviewTitle;
OnKeyPress := F_princ.KPRESS;
OnMouseWheel := F_princ.MouseWheel;
end;
end;
3 - Até aqui todos sabem fazer, mas tem o KPRESS e MouseWheel:
procedure TF_Princ.MouseWheel(Sender: TObject; Shift: TShiftState;
WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
begin
with TQRStandardPreview(Application.FindComponent('QRStandardPreview')) do
begin
Application.ProcessMessages;
VertScrollBar.Range := 1350;
VertScrollBar.Position := VertScrollBar.Position - trunc(WheelDelta / 4);
end;
end;
e ... para rolar com as teclas...
procedure TF_Princ.KPRESS(Sender: TObject; var Key: Char);
begin
with TQRStandardPreview(Application.FindComponent('QRStandardPreview')) do
begin
case key of
'8': begin
Application.ProcessMessages;
VertScrollBar.Range := 1350;
VertScrollBar.Position := VertScrollBar.Position - 30;
end;
'2': begin
Application.ProcessMessages;
VertScrollBar.Range := 1350;
VertScrollBar.Position := VertScrollBar.Position + 30;
end;
end;
end;
end;
Conclusão: se não pode rolar o relatório, role o form inteiro...
[/CODE]
Aguardo ajuda.
TerraSkilll
Zumbi
Moderador
4K Mensagens
1.2K Curtidas
Adicione a unit QrPrev na seção uses do formulário onde está esse código.
Abraço.
Contribua para um fórum melhor: pense antes de postar.
"It isn't a contest. Just enjoy the ride." -> Seth Vidal
Hardware.com.br no Youtube!