原文来自于
http://hi.baidu.com/leejun_2005/blog/item/dae85d07850fc376030881ee.html
今天看到了远控, 写到一半不知下手,于是google了一篇,如下~
1、new一个class
package firstTest;
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 javax.imageio.ImageIO;
public class GuiCamera
{
private String fileName; // 文件的前缀
private String defaultName = "GuiCamera";
static int serialNum = 0;
private String imageFormat; // 图像文件的格式
private String defaultImageFormat = "png";
Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
public GuiCamera() {
fileName = defaultName;
imageFormat = defaultImageFormat;
}
public GuiCamera(String s, String format) {
fileName = s;
imageFormat = format;
}
public void snapShot() {
try {
// 拷贝屏幕到一个BufferedImage对象screenshot
BufferedImage screenshot = (new Robot()).createScreenCapture(new
Rectangle(0, 0, (int) d.getWidth(), (int) d.getHeight()));
serialNum++;
// 根据文件前缀变量和文件格式变量,自动生成文件名
String name = fileName + String.valueOf(serialNum) + "."
+ 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 static void main(String[] args) {
GuiCamera cam = new GuiCamera("J:/Documents and Settings/June/桌面", "png");//
cam.snapShot();
}
}
2、new一个form,在form上面拖放一个button与label,然后添加一段如下代码:
private void jButton1MouseClicked(java.awt.event.MouseEvent evt) {
JFileChooser jFileChooser = new JFileChooser();//FileDialog
jFileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
int returnVal = jFileChooser.showOpenDialog(getParent());
if (returnVal == JFileChooser.APPROVE_OPTION) {
System.out.println("You chose to open this file: "
+ jFileChooser.getSelectedFile().getName());
String fileChooser = jFileChooser.getSelectedFile()
.getAbsolutePath()
+ "\\";
jLabel1.setText("截图已经保存到 :" + fileChooser);
GuiCamera cam = new GuiCamera(fileChooser, "jpg");
cam.snapShot();
}
}
3、效果如图所示,该方法createScreenCapture是robot类中的一个方法,在jdk1.3中加入的。(图第一次挂了,尼玛的百。度防盗链)
分享到:
相关推荐
RobotUtil 是基于 java 自带的 Robot API 封装的一个工具类,用于方便模拟鼠标和键盘操作,对鼠标的移动、按下、释放,键盘的按下、释放、输入,屏幕颜色的判断等做了封装。
Java Robot Wars 实现了java编写的机器人大战,代码简洁,清晰易懂。
Java中Robot类详解 概述 概述 Java中Robot类位于java.awt.Robot,该类⽤于为测试⾃动化,⾃运⾏演⽰程序和其他需要控制⿏标和键盘的应⽤程序⽣成本机系统输⼊ 事件,Robot类的主要⽬的是便于Java平台实现⾃动测试。...
Java中利用Robot实现模拟按键,按下和松开。
用java 来实现的一个程序控制window实现鼠标点击,拖动,键盘的输入指令
这是java 中Robot类的相关程序 这个程序 可以把屏幕以图片的方式截取下来,并保存。在此基础上可以拓展到远程控制的学习
Robot键盘常量java.awt.event.KeyEvent。KeyEvent全部键盘按键映射整理KeyEvent枚举类
matlab转换java代码“#JavaRobot”该功能可以通过UDP直接通过UDP将命令发送到带有控制器DX200的#YASKAWA-MH12#机械臂。 有3个版本,只有第3个版本是可维护的,在此存储库中,可以随时将其用于研究目的,保留所有...
Java Robot对象实现服务器屏幕远程监视
java代码-使用java解决抓取当前屏幕信息的源代码 ——学习参考资料:仅用于个人学习使用!
RobotRobotRobotRobotRobotRobotRobotRobotRobotRobotRobotRobotRobot
机器人编程智能机器人代码
用java robot实现超简单爬虫
Java Robot对象实现服务器屏幕远程监视
本篇文章是对Java中用Robot实现控制鼠标和键盘的方法进行了详细的分析介绍,需要的朋友参考下
基于JAVA CS远程监控系统软件的实现(源代码+论文)_sicknef_JAVA执行文件_JavaRobot_javasock
selenium无法操作win窗口元素,例如附件上传等,RobotFramework框架中自带了AutoItLibrary扩展库,可以很好的操作这些元素,但用java结合selenium来自动化测试时,并没有已经封装的类库,但是可以借助autoit和jacob...
东芝Robot经典系列在工业自动化领域以其卓越的性能和广泛的应用而备受瞩目。这一系列机器人不仅具有高精度、高速度的特点,还具备与PLC(可编程逻辑控制器)和视觉系统的无缝通讯能力,从而实现了更智能、更高效的...
所有文章均同步发布到微信公众号【JavaRobot】,关注微信公众号,及时得到文章推送,谢谢支持。 说明:如无特别说明,所有代码都基于JDK8 JavaSE(Java基础) Java Core 关键字 synchronized关键字 Java String Java ...
robot_framewok自动化测试