我的问题:我在Eclipse RCP应用程序中有一个ViewerComposite,它集成了Jasper Report(* .jrxml)。此ViewerComposite中显示的报告可以导出为PDF,RTF,XML,jrxml,HTML,CSV等。一切都很好,除了我无法使用GUI中ViewerComposite顶部提供的打印选项打印此报告。如何使用报告查看器的打印选项使用我的默认打印机打印报告。 Rem:我可以在Oracle JDeveloper Projects中使用jasper report viewer composite的print选项打印jasper报告,而不添加任何代码(默认情况下)。
答案 0 :(得分:5)
我在Eclipse RCP应用程序中制作Jasper Reports的最佳方法如下:
详情代码如下:
//generate the jaspser print document
JasperPrint jprint = generateReport(id, nepFromDate, nepToDate);
//initialize JRViewer object
JRViewer jasperviewer = new JRViewer(jprint);
//add the SWT_AWT compposite for SWING contents of GUI
final Composite swtAwtComposite = new Composite(comTBReport, SWT.EMBEDDED);
swtAwtComposite.setBounds(10, 0, 767, 600);
Frame frame = SWT_AWT.new_Frame(swtAwtComposite);
Panel panel = new Panel();
frame.add(panel);
panel.setLayout(new BorderLayout(0, 0));
JRootPane rootPane = new JRootPane();
rootPane.setSize(767, 600);
panel.add(rootPane);
//Define a container yourself
Container c = rootPane.getContentPane();
//Add the JRViewer object onto the container to render in GUI
c.add(jasperviewer);