有一种朋友不在生活里,却在生命力;有一种陪伴不在身边,却在心间。图老师即在大家的生活中又在身边。这么贴心的服务你感受到了吗?话不多说下面就和大家分享Java中用Robot类控制鼠标和键盘的方法吧。
【 tulaoshi.com - 编程语言 】
  
  Java.awt.Robot 类用于控制鼠标和键盘。一旦你得到这种控制,你能够通过你的Java代码做与鼠标和键盘任何类型的操作。这个类通常用于自动化测试。下面的代码样例将向您展示Robot类如何处理键盘事件。如果你运行此代码,并打开notepad,您将在notepad中看到HI CAOER.赶快试一试吧。 
  
  import java.awt.AWTException;
  import java.awt.Robot;
  import java.awt.event.KeyEvent;
  public class RobotExp {
  public static void main(String[] args) {
  try {
  Robot robot = new Robot();
  //定义5秒的延迟以便你打开notepad 
  // Robot 开始写
  robot.delay(5000);
  robot.keyPress(KeyEvent.VK_H);
  robot.keyPress(KeyEvent.VK_I);
  robot.keyPress(KeyEvent.VK_SPACE);
  robot.keyPress(KeyEvent.VK_C);
  robot.keyPress(KeyEvent.VK_A);
  robot.keyPress(KeyEvent.VK_O);
  robot.keyPress(KeyEvent.VK_E);
  robot.keyPress(KeyEvent.VK_R);
  } catch (AWTException e) {
  e.printStackTrace();
  }
  }
  } 
网友完善了以上代码:
  
  import java.awt.AWTException;
  import java.awt.Robot;
  import java.awt.event.KeyEvent;
  import java.io.IOException;
  public class RobotExp {
  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 closeApplication(Robot robot) {
  // pressKey(robot, KeyEvent.VK_ALT);
  // pressKey(robot, KeyEvent.VK_F4);
  robot.keyPress(KeyEvent.VK_ALT);
  robot.keyPress(KeyEvent.VK_F4);
  robot.keyRelease(KeyEvent.VK_ALT);
  robot.keyRelease(KeyEvent.VK_F4);
  //for linux.
  // robot.keyPress(KeyEvent.VK_ALT);
  // robot.keyPress(KeyEvent.VK_W);
  // robot.keyRelease(KeyEvent.VK_ALT);
  // robot.keyRelease(KeyEvent.VK_W);
  robot.keyPress(KeyEvent.VK_N);
  robot.keyRelease(KeyEvent.VK_N);
  }
  public static void main(String[] args) throws IOException {
  try {
  Robot robot = new Robot();
  Runtime.getRuntime().exec("notepad");
  // For linux.
  //Runtime.getRuntime().exec("gedit");
  //定义5秒的延迟以便你打开notepad 哈哈
  // Robot 开始写
  robot.delay(3000);
  for (int i = 0; i  100; i++) {
  pressKeyWithShift(robot, KeyEvent.VK_H);
  pressKey(robot, KeyEvent.VK_I);
  pressKey(robot, KeyEvent.VK_SPACE);
  //pressKeyWithShift(robot, KeyEvent.VK_H);
  pressKeyWithShift(robot, KeyEvent.VK_I);
  pressKey(robot, KeyEvent.VK_SPACE);
  pressKey(robot, KeyEvent.VK_A);
  pressKey(robot, KeyEvent.VK_M);
  pressKey(robot, KeyEvent.VK_SPACE);
  pressKey(robot, KeyEvent.VK_T);
  pressKey(robot, KeyEvent.VK_H);
  pressKey(robot, KeyEvent.VK_E);
  pressKey(robot, KeyEvent.VK_SPACE);
  pressKey(robot, KeyEvent.VK_J);
  pressKey(robot, KeyEvent.VK_A);
  pressKey(robot, KeyEvent.VK_V);
  pressKey(robot, KeyEvent.VK_A);
  pressKey(robot, KeyEvent.VK_SPACE);
  pressKey(robot, KeyEvent.VK_R);
  pressKey(robot, KeyEvent.VK_O);
  pressKey(robot, KeyEvent.VK_B);
  pressKey(robot, KeyEvent.VK_O);
  pressKey(robot, KeyEvent.VK_T);
  // VK_ENTER
  pressKey(robot, KeyEvent.VK_ENTER);
  //pressKey(robot, KeyEvent.);
  }
  closeApplication(robot);
  //robot.keyPress(KeyEvent.VK_SPACE);
  } catch (AWTException e) {
  e.printStackTrace();
  }
  }
  } 
  
来源:http://www.tulaoshi.com/n/20160219/1623694.html
看过《Java中用Robot类控制鼠标和键盘的方法》的人还看了以下文章 更多>>