简易画图板介绍

一.功能结构图

二.主类设计

1.总体设计:在设计简易画图板时,根据程序功能的分类,包含了十二个文件,包括SimpleDraw.java,MenuContainer.java,DrawPanel.java,Drawings.java,DrawBtnListener.java,ToolBtnListener.java,NewFileListener.java,LoadFileListener.java

SaveFileListener.java,CheckBoxList.java,MouseA.java,MouseB.java.

2.SimpleDraw.java

该文件包含一个public SimpleDraw类,该类封装了画图板的界面和按钮的监听事件。

3.MenuContainer.java

该文件包含了一个public MenuContainer类,,该类封装了菜单栏创建的各种方法。

4.DrawPanel.java

该文件包含一个public DrawPanel的画图面板类,封装了画图区域的初始状态并且增加了鼠标事件监听,用来画图。

5.Drawings.java

该文件包含一个public Drawings类,实现了序列化接口,封装其他基本的图形单元的通用属性,所有的画图操作都继承该类,同时重写画图方法drwa()

6.DrawBtnListener.java

该文件包含了一个public DrawBtnListener类,该类实现了ActionListener接口,主要功能是监听绘图相关操作按钮的的操作。

7.ToolBtnListener.java

该文件包含了一个public ToolBtnListener类,该类实现了ActionListener接口,主要功能是监听绘制工具栏部分那些绘图按钮的操作。

8.NewFileListener.java

该文件包含了一个public NewFileListener类,主要功能是新建一个空白的画图文件,初始化画图区域以及画笔,颜色等。

9.LoadFileListener.java

该文件包含了一个public LoadFileListener类,主要功能是处理打开文件的监听事件,主要是提供打开本地文件的对话框,可以选择本地的图片文件。

10.SaveFileListener.java

该文件包含了一个pubic SaveFileListener类,主要功能是处理保存文件的监听事件,主要是提供保存文件的对话框,可以选择本地路径,设置用户名,点击确定可以保存文件到本地。

11.CheckBoxList.java

该文件包含了一个public CheckBoxList类,主要功能是提供字体风格的选项。

12.MouseA.java

该文件包含了一个public MouseA类,主要用来画图时鼠标相应时间的监听和操作。

13.MouseB.java

该文件包含了一个public MouseB类,用来完成鼠标拖动和鼠标移动时的相应事件。

三.项目进展

本周的项目按照计划需要完成初步搭建框架结构,并且本周也给出了具体的项目结构图。后面根据设计构思和设计框架将对我们的Java代码进行调试和测试。

四.参考书籍

《Java项目开发实践》 中南大学出版社 2015年版

2015-2016-2《Java程序设计》团队博客2的更多相关文章

  1. 《Java 程序设计》团队博客第十一周(第一次)

    <Java 程序设计>团队博客第十一周(第一次) 团队项目 1.项目内容.目标 项目内容 本组的团队项目准备实现一个有关于大富翁有的游戏程序. 大富翁游戏,以经营权为主要的游戏方式,通过购 ...

  2. java课程设计--猜数字(团队博客)

    java课程设计--猜数字(团队博客) 1.团队名称以及团队成员介绍 团队名称:cz 团队成员:陈伟泽,詹昌锦 团队照片: 2.项目git地址 http://git.oschina.net/Devil ...

  3. Java课程设计博客(团队)

    Java课程设计博客(团队) 1. 团队/项目名称 使用JAVA实现简易HTTP服务器 2. 团队成员 组长:林一心 组员:张杭镖 3. 项目git地址 https://github.com/oran ...

  4. JAVA课程设计——团队博客

    JAVA课程设计--团队博客 1. 团队名称.团队成员介绍(需要有照片) 团队名称:"小羊吃蓝莓"小游戏 团队成员介绍: 成员 班级 学号 廖怡洁 网络1513 201521123 ...

  5. Java课程设计 学生基本信息管理系统 团队博客

    学生基本信息管理系统团队博客 项目git地址 https://git.oschina.net/Java_goddess/kechengsheji 项目git提交记录截图 项目功能架构图与主要功能流程图 ...

  6. 2014年团队博客TOP10

    2014年通过这个团队博客,葡萄城共输出了51篇原创技术博客(含翻译),总阅读超过9万人次,约有1万人次是通过RSS订阅方式阅读,总评论超过500人次. 这里我们通过阅读排序,选出2014年团队博客T ...

  7. Java课程设计——博客作业教学数据分析系统(201521123082 黄华林)

    Java课程设计--博客作业教学数据分析系统(201521123082 黄华林) 一.团队课程设计博客链接 博客作业教学数据分析系统(From:网络五条狗) 二.个人负责模块或任务说明 1.网络爬虫 ...

  8. We Talk -- 团队博客

    WeTalk --在线群聊程序 团队博客 服务器一直在运行,使用客户端可直接登入使用.(做得很粗糙...) 客户端下载(java环境下直接运行) 0.项目介绍 现在我们网上交流离不开微信和QQ,当然在 ...

  9. Java课程设计博客(个人)

    Java课程设计博客(个人) 1. 团队课程设计博客链接 http://www.cnblogs.com/wkfg/p/7063081.html 2. 个人负责模块或任务说明 负责模块/任务:编写doG ...

  10. [敏捷软工团队博客]The Agiles 团队介绍&团队采访

    项目 内容 课程:北航-2020-春-敏捷软工 博客园班级博客 作业要求 团队作业-团队介绍和采访 团队名称来源 The Agile is The Agile. 敏捷就是敏捷.我们只是敏捷的践行者罢了 ...

随机推荐

  1. DameWare入侵

    下载Dameware 去官网下载Dameware,并安装 添加被控端ip 选择Mini连接方式 安装服务到被控端 安装前配置,点击"Install"按钮 如图所示,将选项勾选,并点 ...

  2. AIX 静默安装11gR2 RAC

    AIX安装11gR2  RAC   一.1  BLOG文档结构图       一.2  前言部分   一.2.1  导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它 ...

  3. H3C 帧聚合

  4. 什么影响了mysql的性能-硬件资源及系统方面优化

    随着数据量的增大,数据库的性能问题也是个值得关注的问题,很多公司对mysql性能方面没有太过重视,导致服务浪费过多资源.mysql服务性能差从而直接影响用户体验,这里我们简单的先来聊聊什么影响了mys ...

  5. lvm逻辑卷扩容报错解决

    报错: [root@centos21 space]# resize2fs /dev/centos/root resize2fs (-Dec-) resize2fs: Bad magic number ...

  6. QA流程

    一.测试人员的介入时间 1.当产品经理与业务人员制定需求的时候,测试人员不宜介入: 2.当下一期的需求原型出来以后,这个时候就进入了需求评审.需求分析阶段,此时,测试人员应该介入: 3.当开发人员在编 ...

  7. CentOS 7.5下KVM的安装与配置

    由于没有物理机可用,在自己的VMware Workstation中CentOS 7.5下搭建完成. 首先查看VMware Workstation是否支持虚拟化,把红框内打钩即可. 虚拟化开启并安装Ce ...

  8. 编程小白入门分享五:Vue的自定义组件

    前言 上篇博客简单介绍了vue,本篇博客要在对vue有一定了解后,才可以比较容易理解自定义组件.想要封装好一个组件,一定要熟练掌握这三个技能,父组件 -> 子组件传值(props).子组件 -& ...

  9. SQL查询结果拼接成字符串

    sqlserver中将查询结果拼接成字符串   #for xml path(param)--将查询结果以xml格式输出 1 select id,name from table1 for xml pat ...

  10. LOJ P10002 喷水装置 题解

    每日一题 day35 打卡 Analysis 先将不符合条件的区间去掉(即半径小于W,不然宽度无法符合),将符合条件的按区间存入节点中.区间的左边界是x-sqrt(r*r-W*W/4.0),要计算x轴 ...