标签:
**
1,JRDesignImage不能直接重复复制给不同的band,要用clone()方法
JRDesignImage image=new JRDesignImage(design); JRDesignExpression exp=new JRDesignExpression(); exp.setText("$P{imagepath}+\"cherry.jpg\""); image.setExpression(exp); image.setHeight(135); image.setWidth(99); image.setX(0); image.setY(30); band1.addElement(image); band1.setHeight(170); band3.addElement((JRDesignElement) image.clone());
2,groupmaps即使获取后,如果design后来移除了一些group,该map也会相应变化,所以自己手动创建map会较好,
此处用于group调换位置,如果group是有可能要上下调换位置的,则尽量用不同的group,不要同一个group多个band,这样很难具体定位
添加group时,要确保groupname是唯一的,否则异常
List<JRGroup> grouplist=design.getGroupsList(); System.out.println(design.getGroupsList().size()); Map<String, JRGroup> groupmaps=new HashMap<String,JRGroup>(); for (JRGroup jrGroup : grouplist) { groupmaps.put(jrGroup.getName(), jrGroup); //design.removeGroup(jrGroup); } System.out.println(design.getGroupsList().size()); if(groupmaps.containsKey("group2")){ //design.addGroup((JRDesignGroup) groupmaps.get("group2")); } if(groupmaps.containsKey("group1")){ //design.addGroup((JRDesignGroup) groupmaps.get("group1")); }
3,ireport设置的key可以不唯一,但唯一可能会好一些,便于查找
**
标签:
原文地址:http://www.cnblogs.com/qingmaple/p/5641232.html