报告阶段结束时,主要阶段即将关闭

时间:2016-02-15 11:27:14

标签: java javafx-2 dynamic-reports

在我的javafx应用程序中,我使用的是 DynamicReports ,它是免费的开源Java报告工具。在我的按钮事件的代码中,我正在调用一个方法来显示报告:

report1.setOnAction(event -> {

                    getSupplierListReport();

                }

        );

这是方法:

public void getSupplierListReport()
    {

        report = DynamicReports.report();


        try {
            //show the report


            report
                    .columns(
                            Columns.reportRowNumberColumn("No"),
                            Columns.column("First Name", "f_name", DataTypes.stringType()),
                            Columns.column("Last Name", "l_name", DataTypes.stringType()),
                            Columns.column("Email", "email", DataTypes.stringType())

                    )
                    .title(//title of the report
                            Components.text("Supplier List Report")
                                    .setHorizontalAlignment(HorizontalAlignment.CENTER).setStyle(boldCenteredStyle))
                    .pageFooter(Components.pageXofY().setStyle(boldCenteredStyle))//show page number on the page footer
                    .highlightDetailEvenRows()
                    .setColumnTitleStyle(columnTitleStyle)
                    .setDataSource("SELECT f_name, l_name, email FROM suppliers", connection)
                    .show();
            //export the report to a pdf file
            report.toPdf(new FileOutputStream("d:/report.pdf"));

        } catch (DRException e) {
            e.printStackTrace();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }


    }

报告正确生成且没有错误。想一想,当我关闭主窗口时,报告窗口不会变冷,这是好的,但每当我关闭报告窗口时,它关闭整个应用程序!可能以某种方式动态报告工具关闭功能触发关闭整个应用程序。如何克服这个问题?

1 个答案:

答案 0 :(得分:0)

似乎如果我在show方法中传递参数false,它将不会关闭应用程序。

.show(false);