2016-02-15 53 views
0

在我的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(); 
     } 


    } 

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

回答

0

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

.show(false); 
相关问题