我的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字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [行业资料]创设有效语境 改善英语教学
- [行业资料]微商推广引流的44种方法
- [行业资料]医疗机构输血科血库基本标准
- [行业资料]锂离子电池项目可行性研究报告(2015年
- [行业资料]申请执行人长沙市开福区人口和计划生育
- [行业资料]倾听草木的呼吸(初中阅读)
- [行业资料]长沙新环境厂房租赁合同书
- [行业资料]2022年经济师《金融专业知识与实务(中
- [行业资料]浦东新区2009学年度第二学期期末考试七
- [行业资料]企业劳动用工协议书
- [行业资料]最新苏科版七年级数学上册第二章有理数
- [行业资料]12星座与英语词汇学习
- [行业资料]2008年高考化学科经验
- [行业资料]镇政府2015年工作总结及2016年政府工作
- [行业资料]梧州市产业园区规划及招商引资报告
- [行业资料]大体积砼承台施工作业指导书
- [行业资料]学生干部在创建和谐校园中的作1
- [行业资料]小学语文教师实习个人总结
- [行业资料]2014完美最新奖金制度
- [行业资料]2016年一建建筑实务-重要知识点地质
- 【最新】人教版小学语文三年级上册:第
- 中国中小企业年鉴(地区数据)
- 动物与人类生活的关系 ppt
- 选修3 专题3 胚胎工程知识点
- 遥感技术基础复习题
- 公司员工职业生涯规划实施方案
- 辽宁省建筑施工企业安全生产许可证管理
- 15秋福师《中外幼儿教育史》在线作业二
- 2015-2020年中国网络视频行业深度调研
- 数学八年级下华东师大版21.1算术平均数
- 苏教版一年级语文下册《小松树和大松树
- 油画论文:摄影对当下油画艺术的影响
- 西方自由主义影响下的新闻自由——从17
- 基于支持向量机的商业银行信用风险评估
- 机械设计基础复习题答案(修改)(1)
- 语文:高考作文素材:材料引用及论点论
- 月份工程进度款结算单62+56
- 2018-2023年中国互联网基金行业现状研
- 人教版 PEP 五年级下册Unit1Lesson1 th
- 2014学年第二学期四年级数学期末教学质




