我正在使用 Swing 框架和 JasperReports 开发基于 Java 桌面的应用程序进行报告。我遇到了一些问题,当 JasperViewer 出现时,我想保存报告。 __
如何在保存对话框中设置文件名(默认为空白),以及如何仅限制 Pdf 格式?
这是我的代码:
JRBeanCollectionDataSource beanCollection=new JRBeanCollectionDataSource(matakuliahs); Map<String,Object> map=new HashMap<String, Object>(); map.put("namaMahasiswa", mahasiswa.getNama()); InputStream input=getClass().getResourceAsStream("/reportsederhana/reportsederhana.jrxml"); JasperDesign design=JRXmlLoader.load(input); JasperReport report=JasperCompileManager.compileReport(design); JasperPrint jasperPrint=JasperFillManager.fillReport(report, map, beanCollection); jasperPrint.setName("Laporan "+mahasiswa.getNama()); // it doesn't give the name JasperViewer.viewReport(jasperPrint,false);
为了设置要保存到的默认扩展名,一个想法是您需要以某种方式JRViewer从JasperViewer(实例)获取实例,然后在void JRViewer实例上设置一些保存内容。看一看JRViewer.setSaveContributors(JRSaveContributor[] saveContribs)。
JRViewer
JasperViewer
JRViewer.setSaveContributors(JRSaveContributor[] saveContribs)
对于设置文件名,我不确定,但是请看一下JRViewer.JRViewer(String, boolean)。
JRViewer.JRViewer(String, boolean)
还要检查JRViewer和JasperViewer源代码,它们可能会派上用场。