2017-11-17 15 views
0

最近私は、最新のjasper-reports libでプロジェクトを更新しました。 古いJRViewerクラス(net.sf.jasperreports.swing)が置き換えられました(net.sf.jasperreports.swing)。今私は、エクスポートオプションを設定する方法を把握することはできません。JRViewerのエクスポートオプションはどのように設定しますか?

JRPdfSaveContributor pdf = new JRPdfSaveContributor(locale, resBundle); 
JRRtfSaveContributor rtf = new JRRtfSaveContributor(locale, resBundle); 
JRSingleSheetXlsSaveContributor xls = new JRSingleSheetXlsSaveContributor(locale, resBundle); 
JRDocxSaveContributor docx = new JRDocxSaveContributor(locale, resBundle); 
viewer.setSaveContributors(new JRSaveContributor[] { pdf, rtf, xls, docx }); 

答えて

2

あなたはnet.sf.jasperreports.swing.JRViewerを拡張し、JRViewerToolbarに輸出の貢献者を設定する必要があります:古いコードは次のようでした。このようなもの:

public class MyJRViewer extends JRViewer { 
    //define the constructor that you use 
    public MyJRViewer(JasperPrint jasperPrint) { 
     super(jasperPrint); 
    } 

    @Override 
    protected JRViewerToolbar createToolbar() { 
     JRViewerToolbar toolbar = super.createToolbar(); 

     Locale locale = viewerContext.getLocale(); 
     ResourceBundle resBundle = viewerContext.getResourceBundle(); 
     JRPdfSaveContributor pdf = new JRPdfSaveContributor(locale, resBundle); 
     JRRtfSaveContributor rtf = new JRRtfSaveContributor(locale, resBundle); 
     JRSingleSheetXlsSaveContributor xls = new JRSingleSheetXlsSaveContributor(locale, resBundle); 
     JRDocxSaveContributor docx = new JRDocxSaveContributor(locale, resBundle); 
     toolbar.setSaveContributors(new JRSaveContributor[] {pdf, rtf, xls, docx}); 

     return toolbar; 
    } 
} 
関連する問題