软件工程JAVA课程设计报告3967.pdf

上传人:得** 文档编号:79846687 上传时间:2023-03-21 格式:PDF 页数:15 大小:808.78KB
返回 下载 相关 举报
软件工程JAVA课程设计报告3967.pdf_第1页
第1页 / 共15页
软件工程JAVA课程设计报告3967.pdf_第2页
第2页 / 共15页
点击查看更多>>
资源描述

《软件工程JAVA课程设计报告3967.pdf》由会员分享,可在线阅读,更多相关《软件工程JAVA课程设计报告3967.pdf(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 西安科技大学 软件工程课程设计报告 题目:画图板应用程序开发 班级 学号:姓名:2010 年 12 月 目 录 1 绪论3 2 可行性研究报告3 3 需求分析报告4 4 总体设计报告7 5 详细设计报告8 6 系统实现报告12 7 软件测试报告32 参考文献 1、绪论 11 目的和意义 用过微软 Windows 操作系统的人一定都对 Windows 自带的画图板非常熟悉了。同图像处理软件界的老大 Photoshop 比起来,它虽然不及 Photoshop 的功能强大,内容丰富,但是作为 Windows 一直以来都内带的附件程序,它具有小巧玲珑,简单实用等其他绘图软件所不具备的优点。同时它的风

2、格也被许多其他的绘图软件所仿效。作为一个软件工程专业的学生自己也想亲自动手编写一个属于自己的,简单实用的绘图程序。通过本次课程设计可以增加对整个流程的熟悉以及对程序组织结构和框架的理解,对以后开发和设计更大更复杂的程序无疑有更大的帮助。任务 书写开发文档,分析和制定整个开发过程,然后开发一个自己的画图板应用程序。2、可行性研究报告 进行可行性研究的方法 本应用程序可行性研究是通过对比 windows 自带的画板程序的方式进行的,对 Windows里面的画板进行分析研究,分析得出本应用软件应该实现的基本功能,并根据自己的能力进行了功能上的增加。评价尺度 本软件在评价时应从以下几个方面进行分析:开

3、发时间应尽量短;功能实现的代码应尽量少;代码执行效率要高;有较强的容错能力;技术方面的可行性 系统现阶段的发展过程中,利用现有人力和物力是完全具备的能力开发出来的,作为阶段性产品,日后的发展空间大,实现方法逐步简单容易,所以画图板应用程序在技术上是完全可行的。a 在当前的限制条件下,该程序的功能目标能达到;b 利用现有的技术,该程序的功能可以实现;c 由于能力的不足,现阶段的功能不够完美,还可以在日后完善;d 在规定的限期内,本程序能够完成;法律方面的可行性 本程序不会在后台扫描用户的磁盘文件;本程序为完全免费,没有任何盈利行为,而且仅在内部流通,不予推广,所以不涉及浸犯微软版权的行为,所以本

4、软件完全合法。软件服务条款要与中华人民共和国的法律解释相一致,一致同意服从高等法院所有管辖。如发生软件服务条款与中华人民共和国法律相抵触时,则这些条款将完全按法律规定重新解释,而其它条款则依旧保持对用户产生法律效力和影响。经济可行行 本系统开发成本低,不需要特殊要求。可行性结论 综上所述,本应用程序在技术上可行,经济上可行,操作上可行,因此本应用程序可立即着手开发。3、需求分析报告 对软件需求完全理解对于软件开发工作的成功是至关重要的,需求说明的任务是发现、规范的过程,有益于提高软件开发过程中的能见度,便于对软件开发过程中的控制与管理,便于采用工程方法开发软件,提高软件的质量,便于开发人员、维

5、护人员、管理人员之间的交流、协作,并作为工作成果的原始依据,并且在向潜在用户传递软件功能、性能需求,使其能够判断该软件是否与自己的需求相关。编写目的 为开发人员,维护人员,客户之间提供共同的协议而创立基础,对本画图板软件功能的实现做一全面的描述;本说明书预期读者为客户、业务或需求分析人员、测试人员、文档编写者、项目管理人员;任务概述 本软件进攻学习、研究之用,目标是让使用该软件的用户感觉能够轻松的掌握本软件的各个功能模块。为了方便用户使用,本软件在设计时尽量追求可操作性和简洁大方的人机交互界面的设计,力求尽量减少用户直接输入性的东西,大量使用可选框。功能概述 通过各方面的了解,本软件初步设计的

6、功能为:1 新建一个空白图形文件:用于绘制新的图形。2 打开或保存一个图形文件,便于对图形文件的管理。3 绘制一些基本的图形组件:直线,矩形,实心矩形,椭圆,实心椭圆,圆,实心圆,圆角矩形,实心圆角矩形等。4 用鼠标在绘图板上单击拖动进行随笔花。5 橡皮擦:可以将已绘制的图形擦掉。6 添加文字:可以在绘图区域内添加文字。7 选择文字的字体:通过一个下拉式的选择条,可以选中所需要的字体。本程序中包括:宋体,隶书,华文彩云,仿宋-GB2312,华文行楷,Times New Roman,Serif,Monospaced,SonsSerif,Garamond。当然,在下面的程序分析中可以看到,由于设置

7、了字体选择数组,使得可以随意添加系统支持的任何字体。大大方便和简化了程序设计。8 选择文字的字体风格:通过两个复选框按钮,可以选择需要的字体风格,包括:粗体,斜体,用同时选中两者,只选择其中一种或两者都不选中 3 种选择方式。9 设置画笔的颜色:可以选择当前绘制图形的画笔颜色,让图形更加丰富多彩,生动活泼。10.设置画笔的粗细:该选项在作用于基本图形组件和文字时,它的效果是不同的。当作用于绘制图形组建时,它的作用是改变画笔绘制线条的粗细;当作用于文字时,它的作用是改变文字的大小。由此可以看出,虽然这个画图板程序不如那些专业的绘图程序,但是,“麻雀虽小五脏俱全”,它已经具备了一个绘图软件所应该有

8、的基本功能和操作。功能结构图 画图板功能介绍菜单栏工具栏文件空心矩形打开颜色线条新建 保存空心圆实心矩形直线铅笔保存新建设置颜色设置线条宽度退出打开空心椭圆实心椭圆实心圆橡皮擦颜色设置添加文字字体选择线条宽度设置斜体粗体空心圆角矩形实心圆角矩形 图 3-1 软件功能层次图 用例图 画圆铅笔画线新建保存打开画圆角矩形画矩形画椭圆画直线设置颜色字体线宽用户用例图 4、总体设计报告 编写目的 总体设计的目的就是回答“概括的说,系统该如何实现”这个问题,也就是说这个说明书的编写目的就是告诉程序员和软件设计人员本软件的系统结构和软件结构。本软件的系统层次结构图 图 3-1 是该软件的系统层次结构图。基本

9、图形按钮 基本图形按钮包括:Pencil(随笔画)、Line(直线)、Rect(矩形)、fRect(实心矩形)、Oval(椭圆)、fOval(实心椭圆)、Circle(圆)、fCircle(实心圆)、RoundRect(圆角矩形)、frrect(实心圆角矩形)、Rubber(橡皮擦)、Word(字)。基本图形都继承自同一个父类:drawings。Drawings 具有的变量(属性):int x1,y1,x2,y2;P5QL-ASUS-SE 关键技术 本软件的关键技术有主窗体的设计、菜单栏和工具栏的设计、事件响应的处理、画图的基本功能的实现。运行结果 1.主界面框架 主界面类继承自 JFrame

10、 类,包括构造函数及各种功能的定义,主要代码如下:import.*;import .*;import.*;import.*;public class MiniDrawPad extends JFrame 新建、保存、打开、退出菜单项 代码如下:线条宽度、颜色、提示功能 代码如下:工具栏图形按钮功能实现 创建基本图形按钮、导入图标、加入动作侦听器、字体风格选择、字体选择、画图板等功能的实现。代码如下:pg);choicesi=new JButton(,itemsi);choicesi.setToolTipText(tipTexti);(choicesi);ddActionListener(han

11、dler);choices0.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)newFile(););choices1.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)loadFile(););choices2.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)sa

12、veFile(););choices.addActionListener(handler1);choices.addActionListener(handler1);choices.addActionListener(handler1);1=itemListindex.x2=();itemListindex.y1=itemListindex.y2=();1=itemListindex.x2=();itemListindex.y1=itemListindex.y2=();index+;createNewItem();1=();itemListindex.y1=();String input;in

13、put=(Please input the text you want!);itemListindex.s1=input;itemListindex.x2=f1;itemListindex.y2=f2;itemListindex.s2=style1;index+;currentChoice=14;createNewItem();();public void mouseReleased(MouseEvent e)(Mouse Released:+()+,+()+);if(currentChoice=3|currentChoice=13)itemListindex.x1=();itemListin

14、dex.y1=();itemListindex.x2=();itemListindex.y2=();repaint();index+;createNewItem();public void mouseEntered(MouseEvent e)(Mouse Entered:+()+,+()+);public void mouseExited(MouseEvent e)(Mouse Exited:+()+,+()+);class mouseB extends MouseMotionAdapter public void mouseDragged(MouseEvent e)(Mouse Dragge

15、d:+()+,+()+);if(currentChoice=3|currentChoice=13)itemListindex-1.x1=itemListindex.x2=itemListindex.x1=();itemListindex-1.y1=itemListindex.y2=itemListindex.y1=();index+;createNewItem();else itemListindex.x2=();itemListindex.y2=();repaint();public void mouseMoved(MouseEvent e)(Mouse Moved:+()+,+()+);y

16、pe=currentChoice;itemListindex.R=R;itemListindex.G=G;itemListindex.B=B;itemListindex.stroke=stroke;=R;itemListindex.G=G;itemListindex.B=B;troke=stroke;quals()(fileChooser,Invalid File Name,Invalid File Name,;else try ();FileOutputStream fos=new FileOutputStream(fileName);output=new ObjectOutputStrea

17、m(fos);drawings record;(index);for(int i=0;i index;i+)drawings p=itemList i ;(p);();quals()(fileChooser,Invalid File Name,Invalid File Name,;else try FileInputStream fis=new FileInputStream(fileName);input=new ObjectInputStream(fis);drawings inputRecord;int countNumber=0;countNumber=();for(index=0;i

18、ndex countNumber;index+)inputRecord=(drawings)();itemList index =inputRecord;createNewItem();();repaint();catch(EOFException endofFileException)(this,no more record in file,class not found,);catch(ClassNotFoundException classNotFoundException)(this,Unable to Create Object,end of file,);catch(IOExcep

19、tion ioException)(this,error during read from file,read Error,);各种画图功能的实现 代码如下:各功能运行结果 打开、保存、设置线宽、颜色设置功能图分别见 5-1,5-2,5-3,5-4,这里不再赘述。图 6-1 画矩形、椭圆、圆形、圆角矩形、直线、铅笔功能实现图 图 6-2 橡皮擦功能实现图 图 6-3 添加文字、设置线宽、设置颜色功能图 图 6-4 综合功能图 7、软件测试报告 经测试本软件基本功能均能实现,尚未发现漏洞。8、参考文献 1.张海藩.软件工程导论(第五版).北京.清华大学出版社,2.黄晓东.Java 课程设计案例精编(第二版).中国水利水电出版社。2007 3.谭浩强.Java 软件编程实例教程.北京.清华大学出版社.4.【美】John Lewis William Loftus.Java Software Solutions Foundations of Program Design,Sixth Edition.北京.电子工业出版社,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作报告

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁