java可视化界面开发--保存画图界面-0904

java可视化界面开发–保存画图界面

保存画图界面

前言 前面自制了画图工具,可以在java制作的画图界面上进行画图编辑,但是问题是,当我们点击画图工具的缩小放大栏时,我们画的图形会被擦除,这涉及到一个java内部自带paint类的功用,我们所要做的,就是保存我们画的图形,这样当画图界面还原的时候,能够重现我们原本所画的图形。
在这里插入图片描述**在这里插入图片描述**

先定义一个shape类

这里定义的 shape类是为了创建一个对象,从而保存我们的图形,比如,我们画了一条直线,那么我们需要保存两个点,这样,当我们重新画的时候,就有了依据。

// An highlighted block
package cz0822;

import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;

import javax.swing.JFrame;

/*
这里新建立一个SHape类,用于保存各个图形的点,IFS对象(分形),画笔颜色等。
*/
public class Shape {
   
	private JFrame jj;
	private int x1,x2,y2,y1;//图像点坐标,如果是直线,那就是起止两个坐标,如果是矩形,就是对角线的两个点
	private String name;//画什么样的图形
	private int [] array1;//多边形点坐标
    private int []array2;
    private int []array3;
    private int [] array4;
    private IFS II;//分性对象
    private int end;
    private Color color;//图形颜色
	public Shape(int x1,int y1,int x2,int y2,String name,int []array1,int []array2,int[]array3,int[]array4,int f,IFS II,Color color) {
   
		this.x1=x1;
		this.x2=x2;
		this.y1=y1;
	    this.y2=y2;
	    this.name=name;
	    this.array1=array1;
	    this.array2=array2;
	    this.array3=array3;
	    this.array4=array4;
	    this.end=f;
	    this.II=II;
	    this.color=color;
	}

	/*
	这部分实现复现功能,传递的参数有两个,画笔对象和JFrame对象
	*/
	public void reshape(Graphics G,JFrame JF) {
   
		jj=JF;
		G.setColor(color);
		switch(name) {
   
		case"直线":
		       G.drawLine(x1, y1,
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值