Cet article est une analyse détaillée et une introduction à la méthode d'utilisation de Robot pour contrôler la souris et le clavier en Java. Les amis dans le besoin peuvent s'y référer
La classe Java.awt.Robot est. utilisé pour contrôler la souris et le clavier. Une fois que vous obtenez ce contrôle, vous pouvez effectuer tout type d'opération avec la souris et le clavier via votre code Java. Cette classe est généralement utilisée pour les tests automatisés. L'exemple de code suivant vous montrera comment la classe Robot gère les événements du clavier. Si vous exécutez ce code et ouvrez le bloc-notes, vous verrez HI CAOER dans le bloc-notes. Essayez-le.
Le code est le suivant :
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();}}}
Les internautes ont amélioré le code ci-dessus :
Le code est le suivant :
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(); } } }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!