FastReport VCL程序员手册: 告继承

用户手册中描述了 告继承。我们将在这里描述一些关键时刻。

用户手册中描述了 告继承。我们将在这里描述一些关键时刻。

如果将 告存储在文件中,则需要设置文件夹名称,FastReport将使用该文件夹名称搜索基本 告。该文件夹的内容将显示在“文件|新建…”和“ 告|选项…”对话框中:

FastReport VCL程序员手册: 告继承

该TfrxDesigner.TemplateDir属性用于此目的。默认情况下为空,FastReport将在包含项目的可执行文件(.exe)的文件夹中搜索基本 告。您可以将绝对或相对路径放入此属性。

如果将 告存储在数据库中,则必须编写代码以从数据库加载基本 告并获取可用基本 告的列表。使用TfrxReport.OnLoadTemplate事件加载基本 告:

property OnLoadTemplate: TfrxLoadTemplateEvent read FOnLoadTemplate write FOnLoadTemplate;TfrxLoadTemplateEvent = procedure(Report: TfrxReport; const TemplateName: String) of object;

此事件的处理程序必须将具有给定TemplateName的基本 表加载到Report对象中。这是此类处理程序的示例:

procedure TForm1.LoadTemplate(Report: TfrxReport; const TemplateName: String);var  BlobStream: TStream;begin  ADOTable1.First;  while not ADOTable1.Eof do  begin    if AnsiCompareText(ADOTable1.FieldByName('ReportName').AsString, TemplateName) = 0 then    begin      BlobStream := TMemoryStream.Create;      TBlobField(ADOTable1.FieldByName('ReportBlob')).SaveToStream(BlobStream);      BlobStream.Position := 0;      Report.LoadFromStream(BlobStream);      BlobStream.Free;      break;    end;    ADOTable1.Next;  end;end;

要获取可用模板的列表,应使用以下TfrxDesigner.OnGetTemplateList事件:

property OnGetTemplateList: TfrxGetTemplateListEvent read FOnGetTemplateList write FOnGetTemplateList;TfrxGetTemplateListEvent = procedure(List: TStrings) of object;

此事件的处理程序必须将可用模板的列表返回到List参数中。这是此类处理程序的示例:

procedure TForm1.GetTemplates(List: TList);begin  List.Clear;  ADOTable1.First;  while not ADOTable1.Eof do  begin    List.Add(ADOTable1.FieldByName('ReportName').AsString);    ADOTable1.Next;  end;end;

FastReport可以继承已经创建的 告。为此,您应该使用以下功能:

TfrxReport.InheritFromTemplate(const templName: String; InheritMode: TfrxInheritMode = imDefault): Boolean

此功能允许从指示的 告继承当前加载的 告。该函数的第一个参数是父模板的文件名,第二个参数允许选择继承模式:

  • imDefault-派生对话并提供重命名/删除重复项的信息
  • imDelete-删除所有备份对象
  • imRename-重命名所有备份对象

注意!父模板的搜索是参考当前模板完成的,这对于将目录结构保持在 表存储位置是必需的。快速 告使用相对路径,这就是为什么不必担心应用程序传输的原因(唯一的例外是当当前模式和父模板放置在不同的载体上或使用了 络路径时)。

如果您对FastReport感兴趣,欢迎加入FastReport QQ交流群:702295239

还想要更多吗可以点击阅读【FastReport 表2020最新资源盘点】查找需要的教程资源。让人兴奋的是FastReport .NET正在 火热销售中!>>查看价格详情

标签:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年3月26日
下一篇 2021年3月26日

相关推荐

发表回复

登录后才能评论