FastReport VCL程序员手册:如何打印数组、文件
FastReport VCL是用于Delphi,C ++ Builder,RAD Studio和Lazarus的报告和文档创建VCL库。它提供了可视化模板设计器,可以访问为30多种格式,并可以部署到云,网站,电子邮件和打印中。
近日,FastReport VCL更新至v6.9,在新版本中,在PDF更新中增加了对以下对象的并行表单支持:文本,替换和图片。能够通过InteractiveForms字体子集属性将所需的字形仅包含在相互之间形式中。同时修复了多个Bug问题。欢迎下载体验。(旁边向下按钮下载)
打印数组
主要示例的代码位于?FastReport Demos \ PrintArray?(“ FastReport Demos \ BCB Demos \ PrintArray”)目录中。让我们解释几个细节。
为了打印一个数组,我们使用一个带有“主数据”带的报告,该报告将被多次显示,因为数组中有元素。为此,将一个TfrxUserDataSet组件放置在表单上,然后设置其属性(可以在代码中进行,如我们的示例所示):
RangeEnd := reCount RangeEndCount := a number of elements in an array之后,我们将数据带连接到TfrxUserDataSet组件。为了表示数组元素,请将带有[element]行的文本对象放在?Master Data?区域内。?element?变量是使用TfrxReport.OnGetValue事件填充的。
打印一个TStringList
主要示例的代码位于?FastReport Demos \ PrintStringList?(?FastReport Demos \ BCB Demos \ PrintStringList?)目录中。该方法与使用数组的示例中的方法相同。
打印文件
主要示例的代码位于?FastReport Demos \ PrintFile?(?FastReport Demos \ BCB Demos \ PrintFile?)目录中。
对于打印,您应使用带有“主数据”带的报告,该报告将被打印一次(要执行此操作,应将其连接到包含一个记录的数据源;从菜单中选择一个名为“单行”的源)列表)在频段中启用了拉伸(“Stretch”)和拆分(“允许拆分”)。这意味着,束带的拉伸方式允许为位于其中的所有对象找到空间。但是,如果band在页面中找不到空间,它将在单独的页面中部分显示。
文件内容通过?Text?对象显示,其中包含[file]变量。与前面的示例一样,此变量将填充到TfrxReport.OnGetValue事件中。对象中也启用了拉伸(上下文菜单中的“ Stretch”项或StretchMode属性= smActualHeight)。
打印一个TStringGrid
初始示例的代码位于?FastReport Demos \ PrintStringGrid?(?FastReport Demos \ BCB Demos \ PrintStringGrid?“目录中。让我们解释一些细节。
该TStringGrid组件表示一个具有几行和几列的表。这意味着报告不仅可以按高度延伸,还可以按宽度延伸。要打印此类组件,让我们使用?Cross-tab?对象(将TfrxCrossObject组件添加到项目中后,该对象将变为可用)。该对象仅负责打印具有事先未知的行和列数的表数据。该对象有两个版本:TfrxCrossView用于用户的数据打印,以及TfrxDBCrossView用于从DB表中打印特殊准备的数据。
使用TfrxCrossView,应该预先设置对象。为此,让我们输入报表的设计器,然后双击它来调用对象编辑器。我们必须设置行和列标题嵌套的数量,以及表格单元格中值的数量。在我们的情况下,所有这些值都必须等于“ 1”。在我们的示例中,行和列的标题以及行和列的总值也被禁用。
在TfrxReport.OnBeforePrint事件中,必须使用StringGrid中的值填充对象。通过该TfrxCrossView.AddValue方法添加一个值。它的参数如下:行,列和单元格值的复合索引(由于对象在单元格中可以包含多个值,因此也是复合值)。
打印TTable和TQuery
初始示例的代码位于?FastReport的Demos \ PrintTable?(?FastReport Demos \ BCB演示\ PrintTable?)目录中。工作原理与示例中的相同TStringGrid。在这种情况下,行的索引是其序列号,列的索引是表字段的名称,单元格的值是表字段的值。请注意,必须在“交叉表”对象编辑器中禁用单元格元素的功能(由于单元格中存在各种数据,因此会导致表创建错误),并且还必须禁用表标题的排序(否则,列将按字母顺序排序)。
如果您对FastReport感兴趣,欢迎加入FastReport QQ交流群:801349317
还想要更多吗?您可以点击阅读【FastReport报表2020最新资源盘点】,查找需要的教程资源。让人兴奋的是FastReport .NET正在慧都网火热销售中!>>查看价格详情