Java模拟物理键盘之Robot类的使用例子
2012-03-10 23:00
423 查看
import java.awt.Robot;
import java.awt.event.KeyEvent;
public class main {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
Robot robot = new Robot();
robot.delay(5000);
mouseDemo(robot);
for(int i=0;i<5;i++)
{
pressKey(robot, KeyEvent.VK_F5);
pressKey(robot, KeyEvent.VK_A);
pressKey(robot, KeyEvent.VK_S);
pressKey(robot, KeyEvent.VK_J);
robot.delay(1000);
//System.out.print(i);
}
} catch (Exception e) {
// TODO: handle exception
}
}
/**
* @param robot
* @param keyvalue 按键值
*/
public static void pressKey(Robot robot, int keyvalue) {
robot.keyPress(keyvalue);
robot.keyRelease(keyvalue);
}
public static void pressKeyWithShift(Robot robot, int keyvalue) {
robot.keyPress(KeyEvent.VK_SHIFT);
robot.keyPress(keyvalue);
robot.keyRelease(keyvalue);
robot.keyRelease(KeyEvent.VK_SHIFT);
}
public static void mouseDemo(Robot robot){
robot.mouseMove(80, 10);
robot.mousePress(KeyEvent.BUTTON1_MASK);
try {
Thread.sleep(20);
} catch (InterruptedException e) {
e.printStackTrace();
}
robot.mouseMove(600, 600);
robot.mouseRelease(KeyEvent.BUTTON1_MASK);
}
}
这个Robot对于用Java实现自动化测试很有帮助,但是鄙人最近用了下,发现不是尽如意。因为当我运行这个程序之后,再把焦点调到一个最前的窗口,其中的A,W,D等键按下没什么作用,控制不了焦点程序。不知道原因出在哪里啊?????
import java.awt.event.KeyEvent;
public class main {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
Robot robot = new Robot();
robot.delay(5000);
mouseDemo(robot);
for(int i=0;i<5;i++)
{
pressKey(robot, KeyEvent.VK_F5);
pressKey(robot, KeyEvent.VK_A);
pressKey(robot, KeyEvent.VK_S);
pressKey(robot, KeyEvent.VK_J);
robot.delay(1000);
//System.out.print(i);
}
} catch (Exception e) {
// TODO: handle exception
}
}
/**
* @param robot
* @param keyvalue 按键值
*/
public static void pressKey(Robot robot, int keyvalue) {
robot.keyPress(keyvalue);
robot.keyRelease(keyvalue);
}
public static void pressKeyWithShift(Robot robot, int keyvalue) {
robot.keyPress(KeyEvent.VK_SHIFT);
robot.keyPress(keyvalue);
robot.keyRelease(keyvalue);
robot.keyRelease(KeyEvent.VK_SHIFT);
}
public static void mouseDemo(Robot robot){
robot.mouseMove(80, 10);
robot.mousePress(KeyEvent.BUTTON1_MASK);
try {
Thread.sleep(20);
} catch (InterruptedException e) {
e.printStackTrace();
}
robot.mouseMove(600, 600);
robot.mouseRelease(KeyEvent.BUTTON1_MASK);
}
}
这个Robot对于用Java实现自动化测试很有帮助,但是鄙人最近用了下,发现不是尽如意。因为当我运行这个程序之后,再把焦点调到一个最前的窗口,其中的A,W,D等键按下没什么作用,控制不了焦点程序。不知道原因出在哪里啊?????
相关文章推荐
- 使用JAVA Robot 扩展Webdriver 模拟键盘鼠标操作
- UI自动化测试(四)AutoIT工具使用和robot对象模拟键盘按键操作
- UI自动化测试(四)AutoIT工具使用和robot对象模拟键盘按键操作
- java Robot 类模拟键盘按键和鼠标点击(全局模拟)
- 使用robot封装一个模拟键盘复制粘贴并按下回车的方法
- Java使用Robot操作键盘和鼠标
- 利用 java.awt.Robot 类来自动完成一些键盘或鼠标的动作,下面是一个小例子
- Java中使用HashMap,TreeSet和List来实现模拟斗地主的洗牌和发牌的小例子
- 利用java robot实现模拟键盘事件和截屏
- java Robot 类模拟键盘按键和鼠标点击(全局模拟)
- Java模拟鼠标键盘输入事件 --- Robot 类
- Java使用Robot操作键盘和鼠标
- Matlab探寻(一):控制鼠标和模拟键盘(java.awt.Robot)
- vbs模拟Java Robot操作键盘
- java Robot 类模拟键盘按键和鼠标点击(全局模拟)
- 利用 Java.awt.Robot 模拟键盘输入遇到的几点问题(组合键,双引号)
- 使用Android提供的模拟任意地理位置,报java.lang.IllegalArgumentException: Incomplete location object异常的解决方法
- JAVA_WEB项目之j使用query的验证框架的例子
- 关于java中Properties类的简单的使用例子
- 《JAVA机器人的使用-ROBOT》昨天刚贴,今天被偷到了别的网站,连个链接都没有