Java实现智能机器自动操作电脑
package com.tz.util; import java.awt.Robot;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent; /**
* @author sunshine
* @version 1.0
* @date:2015年8月16日 下午1:29:39
* @description: Robot实现自动化
* 整体功能实现自动点击电脑开始按钮、点击运行、
* 输入CMD命令进入dos命令窗口、查看当前目录dir、
* 查看本机ip信息、退出exit
*/
public class RobotCmd { public static void main(String[] args) {
try {
//实例化机器人
Robot robot = new Robot(); //先移动到开始菜单的位置
robot.mouseMove(24, 880); robot.mousePress(InputEvent.BUTTON1_MASK);
robot.mouseRelease(InputEvent.BUTTON1_MASK);
robot.delay(500); //移动到运行菜单的位置,并且点击
robot.mouseMove(245, 666);
robot.mousePress(InputEvent.BUTTON1_MASK);
robot.mouseRelease(InputEvent.BUTTON1_MASK);
robot.delay(500); //robot按下CMD键
robot.keyPress(KeyEvent.VK_C);
robot.keyPress(KeyEvent.VK_M);
robot.keyPress(KeyEvent.VK_D);
robot.delay(500); //点击确定,进入CMD控制台
robot.mouseMove(145, 745);
robot.mousePress(InputEvent.BUTTON1_MASK);
robot.mouseRelease(InputEvent.BUTTON1_MASK);
robot.delay(500); //输入dir命令
int[] keyDir = {KeyEvent.VK_D,KeyEvent.VK_I,KeyEvent.VK_R,KeyEvent.VK_ENTER};
KeyUtil.pressKeys(robot, keyDir, 500); //输入ipconfig命令
int[] keyIpconfig = {KeyEvent.VK_I,KeyEvent.VK_P,KeyEvent.VK_C,KeyEvent.VK_O,KeyEvent.VK_N,KeyEvent.VK_F,KeyEvent.VK_I,KeyEvent.VK_G,KeyEvent.VK_ENTER};
KeyUtil.pressKeys(robot, keyIpconfig, 500); //输入exit命令
int[] keyExit = {KeyEvent.VK_E,KeyEvent.VK_X,KeyEvent.VK_I,KeyEvent.VK_T,KeyEvent.VK_ENTER};
KeyUtil.pressKeys(robot, keyExit, 500); } catch (Exception e) {
e.printStackTrace();
}
}
}
package com.tz.util; import java.awt.Robot; /**
* @author sunshine
* @version 1.0
* @date:2015年8月16日 下午2:05:23
* @description: 键盘事件操作工具类
*/
public class KeyUtil { /**
* 键盘输入方法
*
* @param robot 机器人类
* @param keys 输入键盘键名
* @param delay 延迟时间
* @return void 无
*
*/
public static void pressKeys(Robot robot,int[] keys,int delay){ //循环遍历数组并赋值
for(int i=0;i<keys.length;i++){
robot.keyPress(keys[i]);
robot.keyRelease(keys[i]);
robot.delay(delay);
}
}
}
Java实现智能机器自动操作电脑的更多相关文章
- GitHub Java项目推荐|不需要 ROOT权限的类似按键精灵的自动操作
不需要 ROOT 权限的类似按键精灵的自动操作软件,可以实现自动点击.滑动.输入文字.打开应用等.Auto.js 的大部分用户用它来点赞.签到.刷游戏 项目分析 仓库名称:Auto.js 标星(sta ...
- Excel文档间的数据替换 ---电脑版APP 自动操作魔法师
http://www.won-soft.com/macro/solution/excel-data-replace.htm 介绍: 在我们的日常工作中, 可能经常需要使用同各种数据表格打交道.比如财务 ...
- Java API —— IO流(数据操作流 & 内存操作流 & 打印流 & 标准输入输出流 & 随机访问流 & 合并流 & 序列化流 & Properties & NIO)
1.操作基本数据类型的流 1) 操作基本数据类型 · DataInputStream:数据输入流允许应用程序以与机器无关方式从底层输入流中读取基本 Java 数据类型.应用程序可以使用数据输出 ...
- 读Hadoop3.2源码,深入了解java调用HDFS的常用操作和HDFS原理
本文将通过一个演示工程来快速上手java调用HDFS的常见操作.接下来以创建文件为例,通过阅读HDFS的源码,一步步展开HDFS相关原理.理论知识的说明. 说明:本文档基于最新版本Hadoop3.2. ...
- JAVA中的集合容器操作类
目录 JAVA中的集合容器操作类 List集合 ArrayList的操作方法说明 LinkedList Stack Set Map Queue 总结 JAVA中的集合容器操作类 Java容器类库总共分 ...
- [转]C# 系统应用之鼠标模拟技术及自动操作鼠标
原文网址: C# 系统应用之鼠标模拟技术及自动操作鼠标 游戏程序的操作不外乎两种——键盘输入控制和鼠标输入控制,几乎所有游戏中都使用鼠标来改变角色的位置和方向,本文主要是讲述如何使用C# ...
- C# 系统应用之鼠标模拟技术及自动操作鼠标
游戏程序的操作不外乎两种——键盘输入控制和鼠标输入控制,几乎所有游戏中都使用鼠标来改变角色的位置和方向,本文主要是讲述如何使用C#调用Windows API函数实现鼠标模拟操作的功能.首先通过结合Fi ...
- java 线程 原子类相关操作演示样例 thinking in java4 文件夹21.3.4
java 线程 原子类相关操作演示样例 package org.rui.thread.volatiles; import java.util.Timer; import java.util.Time ...
- .net reactor 学习系列(三)---.net reactor代码自动操作相关保护功能
原文:.net reactor 学习系列(三)---.net reactor代码自动操作相关保护功能 接上篇,上篇已经学习了界面的各种功能以及各种配置,这篇准备学习下代码控制许可证. ...
随机推荐
- SoapUI接口测试之JDBC(三)
JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用java语言编写的类和接口 ...
- kylin查询出现日期对应不上的情况
情况: 查询的是2016年1月2日的数据,但返回解析出来的数据确实是2号的,可是时间竟然变成了2016年1月1日. 解决: 是时区问题,修改本地时区 具体代码,主要是看加红加粗的: public st ...
- Eclipse中Ctrl+方法名发现无法进入到该方法中……
我现在的情况是,按住Ctrl点击该方法后,发现进入不到这个方法的定义. 后来我发现,是因为这个项目是在某个项目文件夹中,如下: 这时直接找到server这个项目就没有问题了,如图:
- express-1 从Node开始
hello world var http = require('http'); http.createServer(function (req, res) { res.writeHead(200, { ...
- hdu 1078 FatMouse and Cheese
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission( ...
- sql in(1,2,3)参数化查询,错误在将 varchar 值 '1,2,3,4' 转换成数据类型 int 时失败
解决办法 string userIds = "1,2,3,4";using (SqlConnection conn = new SqlConnection(connectionSt ...
- BFS(八数码) POJ 1077 || HDOJ 1043 Eight
题目传送门1 2 题意:从无序到有序移动的方案,即最后成1 2 3 4 5 6 7 8 0 分析:八数码经典问题.POJ是一次,HDOJ是多次.因为康托展开还不会,也写不了什么,HDOJ需要从最后的状 ...
- nav元素
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Target:IG
https://www.zhihu.com/question/25525630 别人轻轻松松红名,我拼死挣扎才1700+分. 仔细想想,虽然我在这东西上花了太多的精力,可是我根本没有认真学.做题全靠抄 ...
- CentOS6.4 增加一个SFTP上传的用户
#创建sftp组 groupadd sftp #创建一个用户dsideal useradd -g sftp -s /bin/false dsideal #设置dsideal用户的密码 passwd d ...