图表生成器Stimulsoft Reports.Java示例:在 告之间复制组件

此示例演示如何复制相同的组件StiPage,StiHeader并且不同的 表之间等。例如,让我们使用两个 表 OriginalReport 和 CustomReport。

此示例演示如何复制相同的组件StiPage,StiHeader并且不同的 表之间等。例如,让我们使用两个 表 OriginalReport 和 CustomReport。

首先,您需要从文件中反序列化 告:

...StiReport originalReport = StiSerializeManager.deserializeReport(StiResourceUtil.getStream("/com/stimulsoft/samples/OriginalReport.mrt"));StiReport customerReport = StiSerializeManager.deserializeReport(StiResourceUtil.getStream("/com/stimulsoft/samples/CustomReport.mrt"));...

然后您可以复制组件。为此,可以使用序列化:

...StiHeaderBand originalHeader = (StiHeaderBand) originalReport.getComponents().get("HeaderBand1");int originalIndex = originalHeader.getPage().getComponents().indexOf(originalHeader);originalHeader.getPage().getComponents().remove(originalIndex);StiHeaderBand customerHeader = (StiHeaderBand) customerReport.getComponents().get("HeaderBand1");String originalHeaderStr = StiSerializerControler.serializedObjectAsString(customerHeader);StiHeaderBand newCustomerHeader = new StiHeaderBand();StiDeserializerControler.deserializeFromString(originalHeaderStr, newCustomerHeader);newCustomerHeader.setPage(originalReport.getPages().get(0));originalReport.getPages().get(0).getComponents().add(originalIndex, newCustomerHeader);newCustomerHeader.setName(StiNameCreation.createName(originalReport, "HeaderBand"));for (StiComponent component : newCustomerHeader.getComponents()) {component.setPage(originalReport.getPages().get(0));component.setParent(newCustomerHeader);component.setName(StiNameCreation.createName(originalReport, component.getName().replaceAll("\d*", "")));}...

Aspose、E-iceblue、FastReport、Stimulsoft等文档/ 表图表类开发工具享超低折扣,如有需要可直接联系在线客服。

标签:

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

上一篇 2021年7月17日
下一篇 2021年7月17日

相关推荐

发表回复

登录后才能评论