Java定期自动截屏的代码(未测试)
来源:互联网 发布:拜占庭 知乎 编辑:程序博客网 时间:2024/05/29 16:32
import java.awt.Dimension;import java.awt.Rectangle;import java.awt.Robot;import java.awt.Toolkit;import java.awt.image.BufferedImage;import java.io.File;import java.util.Timer;import java.util.TimerTask;import javax.imageio.ImageIO;/******************************************************************* * 该JavaBean可以直接在其他Java应用程序中调用,实现屏幕的"拍照" * This JavaBean is used to snapshot the GUI in a * Java application! You can embeded * it in to your java application source code, and us * it to snapshot the right GUI of the application * @see javax.ImageIO * @version 1.0 * *********************************************************************/public class GuiCamera extends TimerTask { private String fileName;//文件的前缀 private String defaultName = "GuiCamera"; static int serialNum = 0; private String imageFormat;//图像文件的格式 private String defaultImageFormat = "png"; Dimension dimension = Toolkit.getDefaultToolkit().getScreenSize(); /**************************************************************** * 默认的文件前缀为GuiCamera,文件格式为PNG格式 * The default construct will use the default * Image file surname "GuiCamera", * and default image format "png" ****************************************************************/ public GuiCamera() { fileName = defaultName; imageFormat = defaultImageFormat; } /**************************************************************** * 本构造支持JPG和PNG文件的存储 * @param s the surname of the snapshot file * @param format the format of the image file, * it can be "jpg" or "png" ****************************************************************/ public GuiCamera(String s, String format) { fileName = s; imageFormat = format; } /**************************************************************** * 对屏幕进行拍照 * snapShot the Gui once ****************************************************************/ public void snapShot() { try { // 拷贝屏幕到一个BufferedImage对象screenshot BufferedImage screenshot = (new Robot()) .createScreenCapture(new Rectangle(0, 0, (int) dimension .getWidth(), (int) dimension.getHeight())); // 根据文件前缀变量和文件格式变量,自动生成文件名 String name = fileName + "." + imageFormat; File f = new File(name); System.out.print("Save File " + name); // 将screenshot对象写入图像文件 ImageIO.write(screenshot, imageFormat, f); System.out.print("..Finished!/n"); } catch (Exception ex) { System.out.println(ex); } } public void run() { snapShot(); } public static void main(String[] args) { Timer timer = new Timer(); int fileNumber = 0; timer.schedule(new GuiCamera("C://11//Hello" + ++fileNumber, "png"), 0, 10000); }}
0 0
- Java定期自动截屏的代码(未测试)
- Java定期自动截屏的代码
- 一段定期自动截屏的代码
- 简单的java爬虫抓取网页实现代码(未测试)
- 取得硬盘剩余空间的Java代码(未测试)
- Java实现网页截屏(未测试)
- JAVA 比较两张图片的相似度的代码(未测试)
- ftp 实现文件的上传下载以及列出文件列表Java代码(未测试)
- WebUploader的java后端上传代码(支持分片上传)(未测试)
- WebUploader的java后端上传代码(支持分片上传)(未测试)
- 根据IP地址获取用户的MAC地址Java代码(未测试)
- Java 实现的断点下载(未测试)
- Java带权重的随机数(未测试)
- Java实现多文件压缩和解压缩代码(未测试)
- Java实现DES加密解密代码(未测试)
- 将图片转换为base64字符串Java代码(未测试)
- MSSQL数据库的定期自动备份计划
- MSSQL数据库的定期自动备份计划
- POJ 1032 最大乘积
- select中option加事件问题
- 顺序表删除相同的元素
- mysql select into和insert into select
- Java 的 PermGen 概念的认识,以及相关问题的处理方法
- Java定期自动截屏的代码(未测试)
- android developer tiny share-20160721
- 3个月网关设计的感受
- PHP学习--1 搭建环境
- 数字敏感与数字的研究
- WebAPP实现自动更新功能
- 使用Android Studio分析内存问题
- Hibernate 总概述
- Sublime Text编辑器的使用