reportelement.java
来自「优秀的打印控件全源代码,类似水晶表的设计器!」· Java 代码 · 共 947 行 · 第 1/2 页
JAVA
947 行
break; } } } position.x += 10; position.y += 10; } /* * This method should be called when you modify height, width, * or position manually. */ public void updateBounds() { bounds = new Rectangle(position.x,position.y,width,height); } public Point trasformTest(Point delta, int type) { if (delta == null) return null; Point result = new Point(delta); int old_x = 0; int old_y = 0; if (type == TransformationType.TRANSFORMATION_MOVE) { } else if (type == TransformationType.TRANSFORMATION_RESIZE_E) { old_x = width; old_x += delta.x; if (old_x <0) old_x=0; result.x = old_x-width; } else if (type == TransformationType.TRANSFORMATION_RESIZE_W) { result.x = Math.min(delta.x,width); } else if (type == TransformationType.TRANSFORMATION_RESIZE_N) { result.y = Math.min(delta.y,height); } else if (type == TransformationType.TRANSFORMATION_RESIZE_S) { old_y = height; old_y += delta.y; if (old_y <0) old_y=0; result.y = old_y - height; } else if (type == TransformationType.TRANSFORMATION_RESIZE_SE) { old_y = height; old_x = width; old_y += delta.y; if (old_y <0) old_y=0; old_x += delta.x; if (old_x <0) old_x=0; result.x = old_x - width; result.y = old_y - height; } else if (type == TransformationType.TRANSFORMATION_RESIZE_SW) { old_y = height; old_y += delta.y; if (old_y <0) old_y=0; result.x = Math.min(delta.x,width); result.y =old_y - height; } else if (type == TransformationType.TRANSFORMATION_RESIZE_NE) { old_x = width; result.y = Math.min(delta.y,height); old_x += delta.x; if (old_x <0) old_x=0; result.x = old_x - width; } else if (type == TransformationType.TRANSFORMATION_RESIZE_NW) { result.y = Math.min(delta.y,height); result.x = Math.min(delta.x,width); } return result; } public String toString() { return name+" ["+(position.x-band.getParent().getRightMargin()-10)+","+ (position.y-band.getBandYLocation()-10) + "]"; } public int getZoomedDim(int dim) { if (zoom_factor == 1.0) return dim; //if (((double)dim*(double)zoom_factor)<0.5) return 1; // Truncate, don't round!! return (int)((double)dim*zoom_factor); //return (int)Math.ceil((double)dim*zoom_factor); } public double getZoomedDim(double dim) { if (zoom_factor == 1.0) return dim; //if (((double)dim*(double)zoom_factor)<0.5) return 1; // Truncate, don't round!! return ((double)dim*zoom_factor); //return (int)Math.ceil((double)dim*zoom_factor); } public int getLogicalDim(int dim) { if (zoom_factor == 1.0) return dim; //if (Math.abs( ((double)dim/(double)zoom_factor)) < 1 && // Math.abs( ((double)dim/(double)zoom_factor)) > 0) return 1; // Truncate, don't round!! return (int)((double)dim/zoom_factor); //return (int)Math.ceil((double)dim/zoom_factor); } public ReportElement cloneMe() { ReportElement newReportElement = new ReportElement(position.x, position.y, width, height); newReportElement.name = new String(name); newReportElement.band = band; newReportElement.transparent = transparent; copyElementPropertiesTo(newReportElement); return newReportElement; } public void copyElementPropertiesTo(ReportElement newReportElement) { newReportElement.printWhenExpression = printWhenExpression; newReportElement.positionType = positionType; newReportElement.isPrintRepeatedValues = isPrintRepeatedValues; newReportElement.isRemoveLineWhenBlank = isRemoveLineWhenBlank; newReportElement.isPrintInFirstWholeBand = isPrintInFirstWholeBand; newReportElement.isPrintWhenDetailOverflows = isPrintWhenDetailOverflows; } public static String string_replace(String s1, String s2, String s3) { String string=""; string = ""; if (s2 == null || s3 == null || s2.length() == 0) return s3; int pos_i = 0; // posizione corrente. int pos_f = 0; // posizione corrente finale int len = s2.length(); while ( (pos_f = s3.indexOf(s2, pos_i)) >= 0) { string += s3.substring(pos_i,pos_f)+s1; //+string.substring(pos+ s2.length()); pos_f = pos_i = pos_f + len; } string += s3.substring(pos_i); return string; } public Stroke getPenStroke(String pen, double zoom_factor) { if (pen == null || pen.equals("None")) return null; if (pen.equals("Dotted")) { return (Stroke)new BasicStroke( (float)(1f * zoom_factor), BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL, 0f, new float[]{5f, 3f}, 0f ); } else if (pen.equals("2Point")) { return (Stroke)new BasicStroke((float)(2f*zoom_factor)); } else if (pen.equals("3Point")) { return (Stroke)new BasicStroke((float)(3f*zoom_factor)); } else if (pen.equals("4Point")) { return (Stroke)new BasicStroke((float)(4f*zoom_factor)); } else if (pen.equals("Thin")) { return (Stroke)new BasicStroke( (float)(1f*zoom_factor)); } else //if (pen.equals("1Point")) { return (Stroke)new BasicStroke((float)(1f*zoom_factor)); } } /** Getter for property width. * @return Value of property width. * */ public int getWidth() { return width; } /** Setter for property width. * @param width New value of property width. * */ public void setWidth(int width) { this.width = width; } /** Getter for property height. * @return Value of property height. * */ public int getHeight() { return height; } /** Setter for property height. * @param height New value of property height. * */ public void setHeight(int height) { this.height = height; } /** Getter for property position. * @return Value of property position. * */ public java.awt.Point getPosition() { return position; } /** Getter for property band. * @return Value of property band. * */ public it.businesslogic.ireport.Band getBand() { return band; } /** Setter for property band. * @param band New value of property band. * */ public void setBand(it.businesslogic.ireport.Band band) { this.band = band; } /** Getter for property transparent. * @return Value of property transparent. * */ public java.lang.String getTransparent() { return transparent; } /** Setter for property transparent. * @param transparent New value of property transparent. * */ public void setTransparent(java.lang.String transparent) { this.transparent = transparent; } /** Getter for property positionType. * @return Value of property positionType. * */ public java.lang.String getPositionType() { return positionType; } /** Setter for property positionType. * @param positionType New value of property positionType. * */ public void setPositionType(java.lang.String positionType) { this.positionType = positionType; } /** Getter for property isPrintInFirstWholeBand. * @return Value of property isPrintInFirstWholeBand. * */ public boolean isIsPrintInFirstWholeBand() { return isPrintInFirstWholeBand; } /** Setter for property isPrintInFirstWholeBand. * @param isPrintInFirstWholeBand New value of property isPrintInFirstWholeBand. * */ public void setIsPrintInFirstWholeBand(boolean isPrintInFirstWholeBand) { this.isPrintInFirstWholeBand = isPrintInFirstWholeBand; } /** Getter for property printWhenExpression. * @return Value of property printWhenExpression. * */ public java.lang.String getPrintWhenExpression() { return printWhenExpression; } /** Setter for property printWhenExpression. * @param printWhenExpression New value of property printWhenExpression. * */ public void setPrintWhenExpression(java.lang.String printWhenExpression) { this.printWhenExpression = printWhenExpression; } /** Getter for property isPrintRepeatedValues. * @return Value of property isPrintRepeatedValues. * */ public boolean isIsPrintRepeatedValues() { return isPrintRepeatedValues; } /** Setter for property isPrintRepeatedValues. * @param isPrintRepeatedValues New value of property isPrintRepeatedValues. * */ public void setIsPrintRepeatedValues(boolean isPrintRepeatedValues) { this.isPrintRepeatedValues = isPrintRepeatedValues; } /** Getter for property fgcolor. * @return Value of property fgcolor. * */ public java.awt.Color getFgcolor() { return fgcolor; } /** Setter for property fgcolor. * @param fgcolor New value of property fgcolor. * */ public void setFgcolor(java.awt.Color fgcolor) { this.fgcolor = fgcolor; } /** Getter for property bgcolor. * @return Value of property bgcolor. * */ public java.awt.Color getBgcolor() { return bgcolor; } /** Setter for property bgcolor. * @param bgcolor New value of property bgcolor. * */ public void setBgcolor(java.awt.Color bgcolor) { this.bgcolor = bgcolor; } /** Getter for property isRemoveLineWhenBlank. * @return Value of property isRemoveLineWhenBlank. * */ public boolean isIsRemoveLineWhenBlank() { return isRemoveLineWhenBlank; } /** Setter for property isRemoveLineWhenBlank. * @param isRemoveLineWhenBlank New value of property isRemoveLineWhenBlank. * */ public void setIsRemoveLineWhenBlank(boolean isRemoveLineWhenBlank) { this.isRemoveLineWhenBlank = isRemoveLineWhenBlank; } /** Getter for property printWhenGroupChanges. * @return Value of property printWhenGroupChanges. * */ public java.lang.String getPrintWhenGroupChanges() { return printWhenGroupChanges; } /** Setter for property printWhenGroupChanges. * @param printWhenGroupChanges New value of property printWhenGroupChanges. * */ public void setPrintWhenGroupChanges(java.lang.String printWhenGroupChanges) { this.printWhenGroupChanges = printWhenGroupChanges; } /** Getter for property name. * @return Value of property name. * */ public java.lang.String getName() { return name; } /** Setter for property name. * @param name New value of property name. * */ public void setName(java.lang.String name) { this.name = name; } /** Getter for property isPrintWhenDetailOverflows. * @return Value of property isPrintWhenDetailOverflows. * */ public boolean isIsPrintWhenDetailOverflows() { return isPrintWhenDetailOverflows; } /** Setter for property isPrintWhenDetailOverflows. * @param isPrintWhenDetailOverflows New value of property isPrintWhenDetailOverflows. * */ public void setIsPrintWhenDetailOverflows(boolean isPrintWhenDetailOverflows) { this.isPrintWhenDetailOverflows = isPrintWhenDetailOverflows; } public void copyBaseReportElement(ReportElement destination, ReportElement source) { // Canonical report elements.... destination.setName( new String(source.getName()) ); destination.setBgcolor( source.getBgcolor()); destination.setFgcolor( source.getFgcolor() ); destination.setBand( source.getBand() ); destination.setPositionType(new String(source.getPositionType())); destination.setIsPrintRepeatedValues( source.isIsPrintRepeatedValues()); destination.setIsPrintWhenDetailOverflows( source.isIsPrintWhenDetailOverflows()); destination.setIsRemoveLineWhenBlank(source.isIsRemoveLineWhenBlank()); destination.setPrintWhenExpression(new String( source.getPrintWhenExpression())); destination.setPrintWhenGroupChanges(new String(source.getPrintWhenGroupChanges())); destination.setTransparent(new String(source.getTransparent())); destination.setIsPrintInFirstWholeBand(source.isIsPrintInFirstWholeBand()); } /** Getter for property key. * @return Value of property key. * */ public java.lang.String getKey() { return name; } /** Setter for property key. * @param key New value of property key. * */ public void setKey(java.lang.String key) { this.name = key; } /** Getter for property stretchType. * @return Value of property stretchType. * */ public java.lang.String getStretchType() { return stretchType; } /** Setter for property stretchType. * @param stretchType New value of property stretchType. * */ public void setStretchType(java.lang.String stretchType) { this.stretchType = stretchType; } }
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?