Java课程设计的图片浏览器的

Java课程设计的图片浏览器的

ID:39454601

大小:386.01 KB

页数:10页

时间:2019-07-03

Java课程设计的图片浏览器的_第1页
Java课程设计的图片浏览器的_第2页
Java课程设计的图片浏览器的_第3页
Java课程设计的图片浏览器的_第4页
Java课程设计的图片浏览器的_第5页
资源描述:

《Java课程设计的图片浏览器的》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、一.课程设计的任务及要求二.需求分析图形化界面(GUI)编程,编写一个图片浏览器程序可以支持““.GIF”,“.JPEG”,“.jpeg”,“.TGA”,“.JPG”,“.jpg”等格式,单张打开图片,可以将同一目录下的图片按缩略图打开按“上一张”“下一张”按钮可以显示相应图片。运行Applet时,图像不是一气呵成的,因为方法不是吧图像完整的装入内存再显示的。于此相反,方法创建一个线程,该线程与Applet的原有线程并发执行,一边装入一边显示,从而产生上了不联需显示的现象。为了提高图像才显示效果,可以采用双缓冲技术:首先把图像装入内存,然后再显示在屏幕上。三.设计思路3

2、.1界面设计选择图片按钮:主要用dir函数实现图片的遍历。上一张,下一张:通过做标轴回调函数实现。由于本软件为单机软件,不需要大量的数据读写和数据交换,实现上、下功能要求只能读取PictureBox控件当前加载的目录,读取当前路径,创建一维数组。frame=newFrame("PictureViewer");Panelpb=newPanel();Buttonselect=newButton("选择图片");previous=newButton("上一张");next=newButton("下一张");select.addActionListener(this);prev

3、ious.addActionListener(this);3.2.图像加载:Applet常用来显示储存在文件中的图像,多数Applet使用的是GIF或JPEG格式的图像文件。需Applet加载图像只需首先定义Image对象,然后使用getImage()方法把图像和文件结合起来即可。image_width=bi.getWidth(this);image_height=bi.getHeight(this);doubleimage_proportion=1.0*image_height/image_width;System.out.println("image:w"+imag

4、e_width+",h"+image_height+",p1"+image_proportion);10if(image_proportion>screen_proportion){image_height=screen_height;image_width=(int)(image_height/image_proportion);System.out.println("p1>p0w="+image_width);}else{image_width=screen_width;image_height=(int)(image_width*image_proportion)

5、;System.out.println("p0>p1h="+image_height);}四.详细设计4.1.程序设计流程图开始图片上一张查找盘符图片下一张查找文件夹结束查找文件4.2.源程序代码packageC;importjava.io.File;importjava.io.FilenameFilter;publicclassMyFilterimplementsFilenameFilter{10privateString[]extension;publicMyFilter(){extension=newString[]{".jpg",".JPG",".gif",".

6、GIF",".png",".PNG",".jpeg",".JPEG"};}publicMyFilter(String[]extension){this.extension=extension;}publicbooleanaccept(Filedir,Stringname){for(Strings:extension){if(name.endsWith(s)){returntrue;}}returnfalse;}}packageC;importjava.awt.*;importjava.awt.event.*;importjava.awt.image.*;publiccl

7、assMyCanvasextendsCanvasimplementsComponentListener{/****/privatestaticfinallongserialVersionUID=1L;privateBufferedImagebi;privateImageim;privateintimage_width;privateintimage_height;publicvoidsetImage(BufferedImagebi){this.bi=bi;this.zoom();}publicvoidpaint(Graphicsg){g.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。