📄 rptdialog.java
字号:
package mapcenter.maptools;
import java.awt.*;
import javax.swing.*;
import net.sf.jasperreports.engine.*;
import net.sf.jasperreports.view.*;
import net.sf.jasperreports.engine.util.JRLoader;
import java.sql.Connection;
import java.util.*;
import java.util.Map;
import java.util.HashMap;
import mapcenter.service.*;
import mapcenter.test.*;
import net.sf.jasperreports.engine.data.*;
public class RptDialog extends JDialog {
JPanel ReportPan = new JPanel();
BorderLayout borderLayout1 = new BorderLayout();
//Bug项目名称
String proname = "";
//显示报表需要的控件
JRViewer jrview;
public RptDialog(String GroupID) {
proname = GroupID;
try {
jbInit();
pack();
}
catch (Exception ex) {
ex.printStackTrace();
}
}
private void jbInit() throws Exception {
java.util.List mainList = new ArrayList();
java.util.List subList = new ArrayList();
subList.add( new SubVO("weijiansheng"));
subList.add( new SubVO("weizhaoyi"));
mainList.add(new MainVO("aaaaa","20041027",subList));
mainList.add(new MainVO("bbbbb","12345678",subList));
mainList.add(new MainVO("ccccc","87654321",subList));
ReportPan.setLayout(borderLayout1);
getContentPane().add(ReportPan);
//装载报表,在Jbuilder工程的目录创建一个Reports文件夹,并把报表的jasper文件搁置在该文件夹。
String reportPath = System.getProperty("user.dir") + "\\Reports\\TestReport1.jasper";
JasperReport jasperReport = (JasperReport) JRLoader.loadObjectFromLocation(reportPath);
//创建数据库的连接,参考java的JDBC编程资料创建连接方式
Connection conn = ConnDBFactory.getInstance().getConnection();
//报表配置参数,前文提过的SQL语句的Where条件参数就是与这里对应。
//条件的值可能是通过多种方式得到的,比如上一个页面传递过来的
Map parameters = new HashMap();
//ProjectName 就是iReport 的变量$P{ProjectName}的名称,参考第一部分的5.6添加参数和使用参proname就是从界面上获取的值。
//parameters.put("ProjectName ", proname);
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, null,new JRBeanCollectionDataSource(mainList));
//装载过程,注意其中的红体字部分
jrview = new JRViewer(jasperPrint);
ReportPan.setLayout(borderLayout1);
ReportPan.setPreferredSize(new Dimension(800, 600));
getContentPane().add(ReportPan, BorderLayout.CENTER);
ReportPan.add(jrview, null);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -