我使用 FastReport 创建了一个报告,但我知道将数据获取到该报告的唯一方法是从数据库中获取数据,我想从 a 获取数据TEdit并且我不想存储任何内容,只需输入并TEdit单击按钮( fastreport.preview) + 打印并完成。
我怎样才能做到这一点 ?
请解释我是 Delphi 和 FastReport 的新手。
一种可能的方法是在运行时访问TfrxReport和TfrxMemoView组件。请注意,当您没有数据集时,Master Data不会打印该带区,因此您应该使用另一个带区。
您可以使用以下代码作为基本示例。只需在组件上放置一个TfrxReportTitle带区(名为'ReportTitle1')和一个TfrxMemoView文本对象(名为'Memo1')TfrxReport。
procedure TfrmMain.btnReportClick(Sender: TObject);
var
memo: TfrxMemoView;
band: TfrxReportTitle;
begin
// Get the band
band := (rptDemo.Report.FindObject('ReportTitle1') as TfrxReportTitle);
// Create a memo
memo := TfrxMemoView.Create(band);
memo.CreateUniqueName;
memo.ParentFont := True;
memo.Text := edtReport.Text;
memo.SetBounds(100, 1, 100, 16);
memo.HAlign := haLeft;
memo.AutoWidth := False;
// Use existing memo
memo := (rptDemo.Report.FindObject('Memo1') as TfrxMemoView);
memo.Text := edtReport.Text;
// Preview report
rptDemo.ShowReport(False);
end;
Run Code Online (Sandbox Code Playgroud)
注意:这是一个工作示例,已使用 FastReport 4.7 进行测试。