我的java课程设计报告之画图板
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
我的java课程设计报告
画图板
目录
1.项目背景/1
2.功能图/1
3.类图/1
4.源代码/1
5.运行结果/12
1.项目背景
本设计的目的是综合面向对象程序设计课程中所学到的知识来开发一个小型的Java应用程序—画图板。本项目的开发工具是Eclipse 4.5。
2.功能图
3.类图
4.源代码
import java.applet.Applet;
import java.awt.*;
import java.awt.Point;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionAdapter;
import java.awt.event.WindowAdapter;
2
import java.awt.event.WindowEvent;
import java.awt.geom.Ellipse2D;
import java.awt.geom.Line2D;
import java.awt.geom.Rectangle2D;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.Properties;
import java.util.Vector;
import javax.imageio.ImageIO;
import javax.swing.JColorChooser;
import javax.swing.JFileChooser;
import javax.swing.JOptionPane;
import com.sun.image.codec.jpeg.JPEGCodec;
import com.sun.image.codec.jpeg.JPEGEncodeParam;
import com.sun.image.codec.jpeg.JPEGImageEncoder;
public class DrawPencil extends Applet
{
private static final long serialVersionUID = 1L;
Vector paintInfo = null;// 点信息向量组
int n = 1;
MediaTracker mt;
int x = -1, y = -1;
int con = 1;
int Econ = 5;
int toolFlag = 0;
Color c = new Color(0, 0, 0);
BasicStroke size = new BasicStroke(con, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL);
EveryPoint cutflag = new EveryPoint(-1, -1, c, 6, con);
Panel toolPanel;
Button eraser, drLine, drCircle, drRect;
Button clear, pen;
Choice ColChoice, SizeChoice, EraserChoice;
Button colchooser;
3
Label 颜色, 大小B, 大小E;
Button openPic, savePic;
FileDialog openPicture, savePicture;
public DrawPencil()
{
super();
}
public void init()
{
this.setSize(900, 600);
paintInfo = new Vector();
ColChoice = new Choice();
ColChoice.add("black");
ColChoice.add("red");
ColChoice.add("blue");
ColChoice.add("green");
ColChoice.addItemListener(new ItemListener()
{
public void itemStateChanged(ItemEvent e)
{
String name = ColChoice.getSelectedItem();
if (name == "black")
{
c = new Color(0, 0, 0);
}
else if (name == "red")
{
c = new Color(255, 0, 0);
}
else if (name == "green")
{
c = new Color(0, 255, 0);
}
else if (name == "blue")
{
c = new Color(0, 0, 255);
}
}
});
SizeChoice = new Choice();
SizeChoice.add("1");
4