您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > JAVA图片浏览器课程设计报告
学号200810165118课程设计报告课程名称Java课程设计题目实现图片浏览器功能的Java程序设计学部专业班级姓名指导教师2011年1月7日Java课程设计任务书题目:实现图片浏览器功能的Java程序设计1.课程设计教学条件要求JDK1.6+Eclipse/NetBeans/JBuilder+SQLServer2000/MySQL2.课程设计任务实现一个图片浏览器,主要功能包括:可以打开一个对话框选择1个或多个文件进行浏览,浏览器中有用于放大、缩小图片的功能。要求使用Swing或SWT组件实现。3.课程设计报告书主要内容1需求分析系统开发思路和相关开发技术、方法的总体介绍2概要设计2.1设计的总体思想与算法描述2.2模块结构图2.3各功能模块的功能与处理流程描述2.4界面设计3详细设计各功能模块程序设计(按照功能模块的功能与处理流程描述给出详细的程序代码,并给出重点语句的注释.)4小结4.课程设计要求(1)学生按时到课程设计指定地点签到,遵守课程设计纪律。(2)学生独立完成课程设计任务。指导教师分时段验收学生完成的阶段任务。(3)学生按时提交课程设计成果和打印的课程设计报告书。5.课程设计参考资料[1]叶核亚.Java2程序设计实用教程[M](第二版).北京:电子工业出版社,2008.4.[2]辛运帏.Java程序设计.北京:清华大学出版社[M],2004[3]张思民,梁维娜.Java程序设计实践教程[M].北京:清华大学出版社,2006.8[4]朱福喜,路迟.Java与面向对象程序设计[M].北京:武汉大学出版社,2007,10[5][美]Echel,B.Java编程思想[M](第三版).北京:机械工业出版社,2005撰写者:江伟指导教师:江伟目录1.需求分析............................................11.1系统开发思路.......................................11.1.1图片浏览器概述.........................................11.1.2图片浏览器的功能特点..............................11.2系统开发相关开发技术...............................11.3方法的总体介绍......................................22.概要设计..............................................32.1设计的总体思想与算法描述.........................32.2模块结构图.........................................32.3各功能模块的功能与处理流程描述..................42.4界面设计............................................42.4.1各主要界面展示.........。..........................42.4.2主要界面实现概述.............................73.详细设计.......................。....................83.1模块程序设计.......................................83.2重要代码展示.......................................84.小结................................................16参考文献..........................................................19-1-1.需求分析1.1系统开发思路1.1.1图片浏览器概述图片浏览器作为计算机使用者浏览各种格式图片的载体而存在,作为人们日使用计算机工作的一大可视化工具,图片浏览器正扮演着越来越重要的角色,我们日常生活中的任何格式的图片文件都必须通过图片浏览器才能进行浏览。随着各种类型图片浏览器的不断更新换代,其功能也日益强大和完善,逐渐成为计算机使用者生活中越来越不可缺少的一部分。1.1.2图片浏览器的功能特点图片浏览器一般都具有打开jpg、gif、png、tiff等格式图片文件并对图片文件夹中的图片进行顺序浏览的功能。一般的图片浏览器还有“上一页”、“下一页”的翻页功能和图片“放大”、“缩小”的浏览功能。功能比较强大的图片浏览器还有文件选择的功能,功能更强大一些的图片浏览器可以对未打开的图片文件进行缩放预览效果的实现。这次课程设计做的图片浏览器实现了上述的大部分功能,不过稳定性和精确度的问题还有待进一步完善。1.1.3开发背景及意义系统以图片浏览为中心,采用面向对象开发方法对图片浏览器内部组织结构、功能需求进行可行性分析,自顶向下逐层分解,主要分为系统分析、系统设计、系统实施、系统测试几个阶段。其中有对现有图片浏览器的功能特点分析,对人们使用图片浏览器的意见分析,对系统实施的可行性分析,对实现过程、数据流程的分析,对系统结构与功能的设计,对系统逻辑结构的设计、用户界面的设计等等。本系统主要提供了针对jpg、gif、png、tiff格式的图片进行浏览的功能,另外还实现了各种浏览图片的功能,如图片放大、缩小,上一页、下一页,文件打开等。1.2系统开发相关开发技术本系统主要用到了Swing、AWT等GUI技术进行控件设置和界面布局,使-2-用了IO技术实现了文件选择的功能。1.3方法的总体介绍本系统的主要方法是对控件的添加及对其属性的设置,文件选择也是主要方法之一,事件响应方法是所有方法的核心。-3-2.概要设计2.1设计的总体思想及算法描述用一个类PicBrowseFrame实现总体框架的设计,定义菜单栏tempItem放置文件菜单File、编辑菜单Edit、帮助菜单help。File下设置“打开”、“退出”两个菜单项,Edit下设置“复制”、“移动”两个菜单项,help下设置“关于作者”一个菜单项。PicBrowseFrame下面放置upPage、downPage、big、small四个JButton分别用来实现“上一页”、“下一页”、“放大”“缩小”的功能。这四个按钮定义在FlieChooser这个类中,它们的方法也在这个类中得到实现。其中“上一页”的代码用“tag-=1;ImageIconig=newImageIcon(ParentPath+\\+files[tag]);”进行实现,与之相应的“下一页”的代码用“tag+=1;ImageIconig=newImageIcon(ParentPath+\\+files[tag]);”进行实现。图片放大和图片缩小分别调用“picUpScanle()”和“picDownScanle()”两个方法进行实现。文件选择主要用了“fileChooser.setCurrentDirectory(newFile(.));”。2.2模块结构图系统总功能概述:打开jpg、gif、png、tiff格式图片文件,连续浏览图片。实现上一页、下一页、放大、缩小图片基本功能,可以复制图片,浏览主界面提供预览缩略图。图2—1用户功能模块图上一页复制重要图片浏览打开功能模块提供帮助信息下一页放大图片缩小图片文件夹JpgGifPngTiff图片-4-2.3各功能模块的功能与处理流程描述打开:文件菜单下的一个菜单项,用来浏览文件,打开图片文件夹中的jpg、gif、png、tiff四种格式的图片。复制:这个功能是附加的,不难实现,其下面的移动并未被实现,移动后源文件没有被删除,所以两个菜单项的功能都是“复制”,复制时要选择保存路径和新的文件名及文件格式,严格说这个功能的实现是失败的。帮助:主要提供浏览器功能的相关信息,点击后会跳出一个frame,上面写着这些信息。上一页:按图片在目标文件夹中的排列顺序选择当前浏览图片的上一张图片。下一页:按图片在目标文件夹中的排列顺序选择当前浏览图片的下一张图片。放大:按照定义好的方法将原图片的width和height的size同时增大。缩小:按照定义好的方法将原图片的width和height的size同时缩小。2.4界面设计2.4.1各主要界面展示系统初始化界面图2—2系统初始化界面-5-文件选择界面图2—3文件选择界面图片选择界面图2—4图片选择界面-6-图片浏览界面图2—5图片浏览界面图片复制界面图2—6图片复制界面-7-帮助界面图2—7帮助界面2.4.2主要界面实现概述初始化界面:首先在frame顶部设置菜单栏,用“frame.setJMenuBar(menuBar);”实现,然后用“JMenuFile=newJMenu(文件);menuBar.add(File);”添加“文件”菜单,用类似的方式再添加“编辑”等菜单。用“tempItem=newJMenuItem(打开);tempItem.addActionListener(newLoadListener());File.add(tempItem);”添加“打开”菜单项,再用同样的方法添加其他菜单项。最后用icons方法用数组定义图片“page.jpg”,最后用“lab=newJLabel(icons[0]);”实现frame对“page.jpg”的调用,在初始化界面显示经PS处理过的图片。图片浏览界面:整个界面用BorderLayout进行布局,在center中添加“imgPane”容器,用来盛放浏览的图片。在frame的south中添加scanlePane,然后用scanlePane盛放四个Button,分别用来实现图片浏览器的四种主要功能。-8-3.详细设计3.1模块程序设计本系统共八个类,PicBrowseFrame是启动类,里面主要设置控件布局和各控件的监听器方法。ExitListener用来实现退出的功能,AboutListener用来实现帮助的功能,CopyListener用来实现复制的功能,UpListener用来实现上一页的功能,DownListener用来实现下一页的功能。FileChooser主要用来实现文件选择的功能,这各类里面除了定义了四个button外,还定义了图片预览的方法preViewMove,使用这个方法可以在frame的右下角同时预览五个小的略缩图。还定义了方法picUpScanle(),用来实现图片的放大;picDownScanle();用来实现图片的缩小。ImageFileView类主要用来指定和现实浏览图片文件的格式,ImageFilter类用来返回相关文件信息。ImagePreview用来实现预览文件的形式。imgVisible类主要用来实现图片的放大缩小和复制图片的功能。Utils类主要用来返回打开图片文件的相关信息。3.2重要代码展示主类PicBrowseFrameimportjava.awt.*;importjava.awt.event.*;importjavax.swing.*;publicclassPicBrowseFrameextendsjavax.swing.JScrollPane{privatestaticJFrameframe=newJFrame(图片浏览器——信管:杨帆200810165118);//顶层容器publicstaticJPanelconPane;//盛放4个buttonprivatestaticJMenuItemtempItem;//菜单栏publicstaticJLabellab;privatestaticIcon[]icons;FileChooserFileCh=newFileChooser();publicvoidshowGUI(){icons=newIcon[]{newImageIcon(info/icons/page.jpg),newImag
本文标题:JAVA图片浏览器课程设计报告
链接地址:https://www.777doc.com/doc-5520762 .html