ellipsereportelement.java

来自「优秀的打印控件全源代码,类似水晶表的设计器!」· Java 代码 · 共 109 行

JAVA
109
字号
/* * EllipseReportElement.java * *  iReport  --  Visual designer for generating JasperReports Documents *  Copyright (C) 2002  Giulio Toffoli gt@businesslogic.it * *  This program is free software; you can redistribute it and/or modify *  it under the terms of the GNU General Public License as published by *  the Free Software Foundation; either version 2 of the License, or *  (at your option) any later version. * *  This program is distributed in the hope that it will be useful, *  but WITHOUT ANY WARRANTY; without even the implied warranty of *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the *  GNU General Public License for more details. * *  You should have received a copy of the GNU General Public License *  along with this program; if not, write to the Free Software *  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. * *  Giulio Toffoli *  Via T.Aspetti, 233 *  35100 Padova ITALY *  gt@businesslogic.it * * Created on 28 febbraio 2003, 22.42 * */package it.businesslogic.ireport;import it.businesslogic.ireport.gui.*;import it.businesslogic.ireport.util.*;import java.awt.*;import java.awt.image.*;import java.awt.geom.*;public class EllipseReportElement extends GraphicReportElement {	public EllipseReportElement(int x, int y, int width, int height)	{		super(x,y,width,height);		graphicElementPen  = "Thin";		this.bgcolor = Color.WHITE;		this.fgcolor = Color.BLACK;                setKey("ellipse");	}		public void drawObject(Graphics2D g,double zoom_factor, int x_shift_origin, int y_shift_origin)	{                           position.x -= 10;		position.y -= 10;		x_shift_origin -= 10;		y_shift_origin -= 10;				this.zoom_factor = zoom_factor;                                g.setColor( bgcolor );                if (!getTransparent().equalsIgnoreCase("Transparent"))                    g.fillOval( getZoomedDim(position.x)-x_shift_origin,				getZoomedDim(position.y)-y_shift_origin,				getZoomedDim(width),				getZoomedDim(height));                		position.x += 10;		position.y += 10;		x_shift_origin += 10;		y_shift_origin += 10;                                drawGraphicsElement(g,this.getGraphicElementPen(), zoom_factor,  x_shift_origin,y_shift_origin);	}		public ReportElement cloneMe()	{		EllipseReportElement newReportElement = new EllipseReportElement(position.x, position.y, width, height);		copyBaseReportElement(newReportElement, this);				return newReportElement;	}		public void  drawGraphicsElement(Graphics2D g, String pen, double zoom_factor, int x_shift_origin, int y_shift_origin)	{				Stroke stroke = getPenStroke( pen,zoom_factor );		g.setColor( this.fgcolor );                		this.zoom_factor = zoom_factor;		if (stroke==null || pen.equalsIgnoreCase("None")) return;				position.x -= 10;		position.y -= 10;		x_shift_origin -= 10;		y_shift_origin -= 10;                                Stroke oldStroke = g.getStroke();                g.setStroke(stroke);		g.drawOval(                    getZoomedDim(position.x)-x_shift_origin,		    getZoomedDim(position.y)-y_shift_origin,                    getZoomedDim(width),getZoomedDim(height));		position.x += 10;		position.y += 10;                                               g.setStroke(oldStroke);        }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?