【Stimulsoft Reports Java教程】报表渲染过程的事件

下载Stimulsoft Reports Java最新版本

此示例项目显示如何为报表呈现事件添加和使用处理程序。

首先,创建JFrame并设置必要的选项。

public static void main(final String[] args) {
    SwingUtilities.invokeLater(new Runnable() {
        public void run() {
            try {
                JFrame frame = new JFrame();
                frame.add(new RenderProcess(frame));
                frame.setSize(FRAME_SIZE);
                frame.setLocationRelativeTo(null);
                frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                frame.setVisible(true);
            } catch (Throwable e) {
                StiExceptionProvider.show(e, null);
            }
        }
    });
}

例如,我们使用SimpleList报表。加载此报表模板并将Demo数据库添加到报表对象。

final StiReport report = StiSerializeManager.deserializeReport(new File("Reports", "SimpleList.mrt"));
StiXmlDatabase xmlDatabase = new StiXmlDatabase("Demo", "Data/" + "Demo.xsd", "Data/" + "Demo.xml");
report.getDictionary().getDatabases().add(xmlDatabase);

为了演示报表呈现时事件的调用顺序,我们将添加几个处理程序。每个处理程序将在应用程序表单的文本区域中添加文本。

report.handlerBeginRender.add(new StiEventHandlerListener() {
    public void invoke(StiEventObject myEvent) {
        appendText(beginRender);
    }
});
 
report.handlerRendering.add(new StiEventHandlerListener() {
    public void invoke(StiEventObject myEvent) {
        appendText(subProcessField1);
    }
});
 
report.handlerRendering.add(new StiEventHandlerListener() {
    public void invoke(StiEventObject myEvent) {
        appendText(subProcessField2);
    }
});
 
report.getPages().get(0).handlerBeginRender.add(new StiEventHandlerListener() {
    public void invoke(StiEventObject myEvent) {
        appendText(subProcessField3);
    }
});
 
report.getPages().get(0).handlerEndRender.add(new StiEventHandlerListener() {
    public void invoke(StiEventObject myEvent) {
        appendText(subProcessField4);
    }
});
 
report.handlerEndRender.add(new StiEventHandlerListener() {
    public void invoke(StiEventObject myEvent) {
        appendText(finishField);
    }
});

示例代码的结果如下图所示:

Stimulsoft

查看原文,下载示例

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值