提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:杨鹏连|2021-04-12 11:10:25.210|阅读 249 次
概述:本文介绍了FastReport VCL如何加载、保存、设计、运行、预览、打印、汇出报告,以及创建一个自定义预览窗口。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
相关链接:
FastReport VCL是用于Delphi,C ++ Builder,RAD Studio和Lazarus的报告和文档创建VCL库。它提供了可视化模板设计器,可以访问最受欢迎的数据源,报告引擎,预览,将过滤器导出为30多种格式,并可以部署到云,Web,电子邮件和打印中。
近日,FastReport VCL更新至v6.9,在新版本中,在PDF导出中增加了对以下对象的交互式表单支持:文本,复选框和图片。能够通过InteractiveFormsFontSubset属性将所需的字形仅包含在交互式形式中。同时修复了多个Bug问题。欢迎下载体验。(点击下方按钮下载)
加载和保存报告
默认情况下,报告表单与项目表单一起存储,即存储在DFM文件中。在大多数情况下,不需要任何其他操作,因此您无需采取特殊措施即可加载报告。如果您决定将报告表单存储在文件中或DB BLOb字段中(这提供了极大的灵活性,即您可以在不重新编译程序的情况下修改报告),则必须使用以下TfrxReport方法来加载和保存报告:
function LoadFromFile(const FileName: String; ExceptionIfNotFound: Boolean = False): Boolean;从文件中加载具有给定名称的报告。如果第二个参数等于“ True”,但找不到该文件,则它将生成异常。如果文件加载成功,则返回“ True”。
procedure LoadFromStream(Stream: TStream);从流中加载报告
procedure SaveToFile(const FileName: String);将报告保存到具有指定名称的文件中
procedure SaveToStream(Stream: TStream);将报告保存到流中
带有报告表单的文件默认情况下具有“ FR3”扩展名。
例子:
Pascal:
frxReport1.LoadFromFile('c:\1.fr3'); frxReport1.SaveToFile('c:\2.fr3');C ++:
frxReport1->LoadFromFile("c:\\1.fr3"); frxReport1->SaveToFile("c:\\2.fr3");设计报告
调用报表设计器是通过TfrxReport.DesignReport方法执行的。设计人员必须包含在您的项目中(使用TfrxDesigner组件或将“ frxDesgn”单元添加到使用列表中就足够了)。
该DesignReport方法采用两个默认参数:
procedure DesignReport(Modal: Boolean = True; MDIChild: Boolean = False);Modal参数确定设计者是否应该是模态的。MDIChild参数允许使设计器窗口成为MDI子窗口。
例子:
frxReport1.DesignReport;运行报告
应用以下两种TfrxReport方法之一将启动报告:
procedure ShowReport(ClearLastReport: Boolean = True);启动报告并在预览窗口中显示结果。如果“ ClearLastReport”参数等于“ False”,则该报告将添加到先前构建的报告中,否则将清除先前构建的报告(默认情况下)。
function PrepareReport(ClearLastReport: Boolean = True): Boolean;在不打开预览窗口的情况下启动报告。参数分配与“ ShowReport”方法中的相同。如果成功构建了报告,则返回“ True”。
在大多数情况下,使用第一种方法更为方便。它会立即显示预览窗口,同时继续构建报告。
如果需要在先前构造的报表中添加另一个报表(此技术用于批量报表打印),则可以方便地使用“ ClearLastReport”参数。
例子:
frxReport1.ShowReport;预览报告
可以通过两种方式在预览窗口中显示报告:通过调用TfrxReport.ShowReport 方法(如上所述)或借助该TfrxReport.ShowPreparedReport方法。在第二种情况下,不执行报告构造,但显示完成的报告。这意味着,您应该在PrepareReport方法的帮助下预先构建它,或者从文件中加载以前构建的报告(请参阅加载和保存完成的报告)。
例子:
Pascal:
if frxReport1.PrepareReport then frxReport1.ShowPreparedReport;C ++:
if(frxReport1->PrepareReport(true)) frxReport1->ShowPreparedReport();在这种情况下,报告构建首先完成,然后显示在预览窗口中。构造大型报告可能要花费很多时间,因此使用ShowReport异步方法比PrepareReport/更好ShowPreparedReport。默认情况下,可以通过TfrxReport.PreviewOptions属性分配预览设置。
打印报告
在大多数情况下,您将从预览窗口中打印报告。要手动打印报告,应使用以下TfrxReport.Print方法,例如:
frxReport1.LoadFromFile(...); frxReport1.PrepareReport; frxReport1.Print;同时,将出现可以设置打印参数的对话框。您可以默认分配设置,并在该TfrxReport.PrintOptions属性的帮助下禁用打印对话框。
加载并保存完成的报告
可以从预览窗口执行。这也可以在TfrxReport.PreviewPages方法的帮助下手动执行:
function LoadFromFile(const FileName: String; ExceptionIfNotFound: Boolean = False): Boolean; procedure SaveToFile(const FileName: String); procedure LoadFromStream(Stream: TStream); procedure SaveToStream(Stream: TStream);分配和参数类似于相应的TfrxReport方法。默认情况下,包含完成的报告的文件的扩展名为“ FP3”。
例子:
帕斯卡:
frxReport1.PreviewPages.LoadFromFile('c:\1.fp3'); frxReport1.ShowPreparedReport;C ++:
frxReport1->PreviewPages->LoadFromFile("c:\\1.fp3"); frxReport1->ShowPreparedReport();注意:完成报表加载后,将通过ShowPreparedReport方法执行其预览!
汇出报告
可以从预览窗口执行。也可以通过TfrxReport.Export方法手动执行该操作。在此方法的参数中,应指定要使用的导出过滤器:
frxReport1.Export(frxHTMLExport1);导出过滤器组件必须可用(您必须将其放在项目的窗体上)并已正确调整。
创建一个自定义预览窗口
FastReport在标准预览窗口中显示报告。如果由于某种原因它不适合您,则可能会创建一个自定义预览表单。为此,TfrxPreview设计了FastReport组件面板中的组件。要显示报告,应将此TfrxReport.Preview属性的链接分配给该属性。
使用TfrxPreview组件时有两个典型的问题。它不处理键(箭头,PgUp,PgDown等)和鼠标滚轮(如果有)。要TfrxPreview使用键,请将焦点传递给它(例如,可以在OnShow表单的事件处理程序中完成):
frxPreview.SetFocus;要TfrxPreview使用鼠标滚动,必须创建OnMouseWheel表单的事件处理程序并TfrxPreview.MouseWheelScroll在此处理程序中调用方法:
procedure TForm1.FormMouseWheel(Sender: TObject; Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean); begin frxPreview1.MouseWheelScroll(WheelDelta); end;
如果您对FastReport感兴趣,欢迎加入FastReport QQ交流群:702295239
还想要更多吗?您可以点击阅读【FastReport 报表2020最新资源盘点】,查找需要的教程资源。让人兴奋的是FastReport .NET正在慧都网火热销售中!在线订购惠享超低折扣。>>查看价格详情
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn
文章转载自:本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@pclwef.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢