Java Jasper查看器集标题

Java Jasper查看器集标题,java,swing,jasper-reports,Java,Swing,Jasper Reports,下面是我在swing应用程序中显示Jasper报告的方式 JasperViewer.viewReport(jasperPrint, true); 然后,在查看报告时,报告查看器的标题是“Jasper查看器”。我想更改它并设置我自己的标题名。我的另一个问题是如何在不查看的情况下直接将报告发送到打印版。请给出任何示例代码。谢谢JasperViewer。viewReport(…)是一个包装类,它创建并显示一个带有JRViewer面板的JFrame 使用此方法,您无法访问底层的JFrame,因此无法

下面是我在swing应用程序中显示Jasper报告的方式

 JasperViewer.viewReport(jasperPrint, true);

然后,在查看报告时,报告查看器的标题是“Jasper查看器”。我想更改它并设置我自己的标题名。我的另一个问题是如何在不查看的情况下直接将报告发送到打印版。请给出任何示例代码。谢谢

JasperViewer。viewReport(…)
是一个包装类,它创建并显示一个带有
JRViewer
面板的
JFrame

使用此方法,您无法访问底层的
JFrame
,因此无法更改框架标题

您可以尝试使用公共构造函数创建自己的
JasperViewer
框架,然后使用
setTitle(…)
方法设置标题

另一种推荐的方法是使用
JRViewer
面板创建自定义
JDialog

要打印报告而不查看,请执行以下操作:

final JRPrintServiceExporter exporter = new JRPrintServiceExporter();
exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
exporter.setParameter(JRPrintServiceExporterParameter.DISPLAY_PAGE_DIALOG, Boolean.FALSE);
exporter.setParameter(JRPrintServiceExporterParameter.DISPLAY_PRINT_DIALOG, Boolean.TRUE);
exporter.exportReport();

我通常做的是:

        JasperViewer jv = new JasperViewer(jasperPrint, false);
        jv.setTitle("Report-Title");
        jv.setVisible(true);
这是因为JasperViewer是一个JFrame-

public class JasperViewer extends JFrame{
   //...
}