⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shape.java

📁 java画图程序. 能完成大多数的功能.
💻 JAVA
字号:
/**直线 矩形 圆等类的父类。定义了他们的共同数据和方法
 */
package cn.edu.xmu.LHand;
import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.event.*;
import java.awt.Stroke;
import java.io.Serializable;
import	javax.swing.JOptionPane;

public abstract class Shape extends IShape implements Serializable{
	
		protected Color color = null;
		protected int startX;
		protected int startY;
		protected float stroke;
		protected int currentX;               //用来保存传说中的左上角坐标
		protected int currentY;				//用来保存传说中的左上角坐标
		protected int endX;
		protected int endY;
		
		protected Shape(Color color1, float strokes, int x, int y){
			currentX  = x;
			startX = x;
			currentY = y;
			startY = y;
			color = color1;
			stroke = strokes;
		}
		
		public void mouseDragged(MouseEvent event){
			switch( DrawBoard.buttonPressed ){

				case 2:
					endX = event.getX();
					endY = event.getY();
					break;
				case 3:
				case 4:
				case 5:
				case 6:
					endX = Math.abs(event.getX()-startX);
					endY = Math.abs(event.getY()-startY);
					
					if(startX > event.getX())
						currentX = event.getX();
					if(startY > event.getY())
						currentY = event.getY();
					break;
				default:
					break;
			}
			
		}
		public  void mousePressed(MouseEvent event){}
		public void mouseReleased(MouseEvent event){
			mouseDragged(event);
		}
		public abstract void draw(Graphics2D graph);
	}

⌨️ 快捷键说明

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