FastReport VCL报表教程:如何创建、清除变量列表,使用变量列表添加变量
FastReport VCL程序员手册:如何创建、清除变量列表
FastReport VCL是用于Delphi,C ++ Builder,RAD Studio和Lazarus的报告和文档创建VCL库。它提供了可视化模板设计器,可以访问为30多种格式,并可以部署到云,网站,电子邮件和打印中。
近日,FastReport VCL更新至v6.9,在新版本中,在PDF更新中增加了对以下对象的并行表单支持:文本,替换和图片。能够通过InteractiveForms字体子集属性将所需的字形仅包含在相互之间形式中。同时修复了多个Bug问题。
【慧都网】免费下载FastReport VCL v6.9最新版
创建变量列表
报表变量的链接存储在TfrxReport.Variables属性中。要手动创建列表,必须执行以下步骤:
- 清除清单
- 创建一个类别
- 创建变量
- 重复第2步和第3步,以创建另一个类别。
清除变量列表
它是在TfrxVariables.Clear方法的帮助下执行的:
Pascal:
frxReport1.Variables.Clear;
C ++:
frxReport1->Variables->Clear();
添加类别
必须创建至少一个类别。类别和变量存储在一个列表中。类别与变量的区别在于名称的第一个符号“空格”。位于类别之后列表中的所有变量均被视为属于该类别。
将类别添加到列表的过程可以通过两种方式执行:
Pascal:
frxReport1.Variables[' ' + 'My Category 1'] := Null;
C ++:
frxReport1->Variables->Variables[" My Category 1"] = NULL;
或者
Pascal:
var Category: TfrxVariable; Category := frxReport1.Variables.Add; Category.Name := ' ' + 'My category 1';
C ++:
TfrxVariable * Category; Category = frxReport1->Variables->Add(); Category->Name = " My category 1";
如何使用变量列表添加变量
仅在添加类别后才能添加变量。位于类别之后列表中的所有变量均被视为属于该类别。变量名称在整个列表中必须是唯一的,而不是在类别中
有几种方法可以将变量添加到列表中:
Pascal:
frxReport1.Variables['My Variable 1'] := 10;
C ++:
frxReport1->Variables->Variables["My Variable 1"] = 10;
这样可以添加一个变量(如果尚不存在)或修改现有变量的值。
Pascal:
var Variable: TfrxVariable; Variable := frxReport1.Variables.Add; Variable.Name := 'My Variable 1'; Variable.Value := 10;
C ++:
TfrxVariable * Variable; Variable = frxReport1->Variables->Add(); Variable->Name = "My Variable 1"; Variable->Value = 10;
两种方式都将变量添加到列表的末尾,因此将其添加到最后一个类别。如果应该将变量添加到列表的指定位置,请使用“插入”方法:
Pascal:
var Variable: TfrxVariable; Variable := frxReport1.Variables.Insert(1); Variable.Name := 'My Variable 1'; Variable.Value := 10;
C ++:
TfrxVariable * Variable; Variable = frxReport1->Variables->Insert(1); Variable->Name = "My Variable 1"; Variable->Value = 10;
如果要将变量添加到指定的类别,请使用以下AddVariable方法:
Pascal:
frxReport1.Variables.AddVariable('My Category 1', 'My Variable 2', 10);
C ++:
frxReport1->Variables->AddVariable("My Category 1", "My Variable 2", 10);
如果您对FastReport感兴趣,欢迎加入FastReport QQ交流群:801349317