教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 行业资料 >

我的java课程设计报告之画图板

来源:网络收集 时间:2026-09-23
导读: 我的java课程设计报告之画图板 我的java课程设计报告 画图板 目录 1.项目背景/1 2.功能图/1 3.类图/1 4.源代码/1 5.运行结果/12 我的java课程设计报告之画图板 1. 项目背景 本设计的目的是综合面向对象程序设计课程中所学到的知识来开发一个小型的Java应用程

我的java课程设计报告之画图板

我的java课程设计报告

画图板 目录

1.项目背景/1 2.功能图/1 3.类图/1 4.源代码/1 5.运行结果/12

我的java课程设计报告之画图板

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

我的java课程设计报告之画图板

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

我的java课程设计报告之画图板

Label 颜色, 大小B, 大小E; Button openPic, savePic;

FileDialog openPicture, savePicture; public DrawPencil() { }

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") { }

else if (name == "red") { }

else if (name == "green") { }

else if (name == "blue") { }

c = new Color(0, 0, 255); c = new Color(0, 255, 0); c = new Color(255, 0, 0); c = new Color(0, 0, 0);

super();

});

SizeChoice = new Choice(); SizeChoice.add("1");

4

我的java课程设计报告之画图板

SizeChoice.add("3"); SizeChoice.add("5"); SizeChoice.add("7"); SizeChoice.add("9");

SizeChoice.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent e) { String selected = SizeChoice.getSelectedItem(); if (selected == "1") { con = 1;

size = new BasicStroke(con, BasicStroke.CAP_BUTT,

BasicStroke.JOIN_BEVEL);

}

else if (selected == "3") { con = 3;

size = new BasicStroke(con, BasicStroke.CAP_BUTT,

BasicStroke.JOIN_BEVEL);

}

else if (selected == "5") { con = 5;

size = new BasicStroke(con, BasicStroke.CAP_BUTT,

BasicStroke.JOIN_BEVEL);

}

else if (selected == "7") { con = 7;

size = new BasicStroke(con, BasicStroke.CAP_BUTT,

BasicStroke.JOIN_BEVEL);

}

else if (selected == "9") { con = 9;

size = new BasicStroke(con, BasicStroke.CAP_BUTT,

BasicStroke.JOIN_BEVEL);

}

}

});

EraserChoice = new Choice(); EraserChoice.add("5"); EraserChoice.add("9");

5

我的java课程设计报告之画图板

EraserChoice.add("13"); EraserChoice.add("17");

EraserChoice.addItemListener(new ItemListener() {

public void itemStateChanged(ItemEvent e) { }

String Esize = EraserChoice.getSelectedItem(); if (Esize == "5") { }

else if (Esize == "9") { }

else if (Esize == "13") { }

else if (Esize == "17") { }

Econ = 17 * 3; Econ = 13 * 2; Econ = 9 * 2; Econ = 5 * 2;

});

toolPanel = new Panel(); clear = new Button("清除"); eraser = new Button("橡皮"); pen = new Button("画笔"); drLine = new Button("画直线"); drCircle = new Button("画圆形"); drRect = new Button("画矩形"); openPic = new Button("打开图画");

savePic = new Button("保存图画");

clear.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) { }

toolFlag = 2;

paintInfo.removeAllElements(); repaint();

});

6

我的java课程设计报告之画图板

eraser.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { // TODO 自动生成方法存根 toolFlag = 1;

}

});

pen.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { // TODO 自动生成方法存根 toolFlag = 0;

}

});

drLine.addActionListener(new ActionListener() { public void actionPerformed(Actio …… 此处隐藏:7755字,全部文档内容请下载后查看。喜欢就下载吧 ……

我的java课程设计报告之画图板.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/2271768.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)