欢迎来到天天文库
浏览记录
ID:22491834
大小:190.32 KB
页数:14页
时间:2018-10-29
《实现屏幕截图的小程序java课程设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、TAIYUANUNIVERSITYOFSCIENCEANDTECHNOLOGY经济与管理学院信息管理与信息系统专业《java实验周》报告(2015/2016学年第一学期)学生姓名:学生班级:学生学号:指导教师:2015年12月25日Java实验周报t1?实现屏幕截图的小程序一、实验题目实现屏幕截图的小程序二、实验要求编程一个应用小程序,能够具有屏幕截图的功能,截图的具体实现有:(1)显示出工作区域,即能够截屏的面积;(2)鼠标可以随意滑动进行截图;(3)将所截取的图片保存在想要保存的位置;(4)程序结束后可以退出整个应用。三、程序流程图3.1业务流程图U!技术
2、原理程序的主炎是cutScreen,继承自无边框的框架jWindow;cutScreen()是一个定义屏幕尺寸的构造方法;使用方法mousePressed(MouseEvente)来监听当前鼠标点击的动作;用方法mouseReleased(MouseEvente)监听鼠标松开时,显示操作窗口;方法mouseDragged(MouseEvente)监听拖动鼠标;paint(Graphicsg)画出指定的工作区域;savelmage()保存图像。T具栏ToolsWindow类,继承自有边框的框架jFrame;方法init()用来设置布局方式为BorderLayou
3、t;run()捕捉屏幕截图。五、附实验代码importjava.awt.*;importjava.awt.event.*;importjava.awt.image.Bufferedlmage;importjava.awt.image.RescaleOp;importjava.io.File;importjava.io.IOException;importjava.text.SimpleDateFormat;importjava.utiLDate;importjavax.imageio.ImagelO;importjavax.swing.*;importjava
4、x.swing.filechooser.FileNameExtensionFilter;importjavax.swing.filechooser.FileSystemView;//Jwindow是一个无边框的框架publicclasscutScreenextendsJWindow{//beginX开始的横坐标;beginY开始的纵坐标privateintbeginX,beginY,endX,endY;privateBufferedlmageimage=null;privateBufferedlmagetemplmage=null;privateBuffere
5、dlmagesavelmage=null;privateToolsWindowtools=null;//构造方法publiccutScreen()throwsAWTException,IOException(//获取屏幕尺寸宽和高intwidth=Toolkit.getDefaultToolkit().getScreenSize().width;intheight=TooIkit.getDefaultToolkit().getScreenSize().height;//设置窗口大小//(0,0,width,height)第一个0代表横坐标,第二个代表纵坐标th
6、is.setBounds(0,0,width,height);//截取屏幕Robotrobot=newRobot();//参数Rectangle是代表工作IX域image=robot.createScreenCapture(newRectangle(0,0,width,height));ImageIO.write(image,"jpg",newFile(’’d:/r'));//本窗口添加监听(适配器)this.addMouseListener(newMouseAdapter(){@Override//当前鼠标点击动作publicvoidmousePressed
7、(MouseEvente){beginX=e.getX();beginY=e.getY();if(tools!=null){tooIs.setVisible(false);})@OverridepublicvoidmouseReleased(MouseEvente){//鼠标松幵时,显示操作窗口if(tools==null){tools=newToolsWindow(cutScreen.this,e.getX(),e.getY());}else{tools.setLocation(e.getX(),e.getYO);}tools.setVisible(true
8、);//将此窗口罝于前端,并可以将其设
此文档下载收益归作者所有