Доброго времени суток. Сегодня, в этой статье, я хочу рассказать, как реализовать простого JAVA робота (статья предназначена для тех, кто хоть поверхностно знает язык JAVA ). Для начала о роботе.
Класс Java.awt.Robot используется для эмуляции нажатия клавиш мыши и клавиатуры. С помощью этого класса можно выполнять действия с клавиатурой и мышью непосредственно через код. Чаще всего этот класс используют для автоматизации или тестирования.
Наш запрограммированный JAVA robot будет выполнять такие действие:
1. Перевести мышку на заданную нами координату
2. Эмулироватьнажатие кнопки
И так, приступим к написанию программы . Для начала создайте проект с именем myrobot, после чего приступим непосредственно к коду:
package myrobot; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.InputEvent; import java.awt.event.KeyEvent; import javax.swing.*; class myFrame extends JFrame { private Robot robot; public myFrame() { setTitle("iRobot"); // имя заголовка нашего окна JPanel panel = new JPanel(); // создаем контейнер GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment(); GraphicsDevice screen=env.getDefaultScreenDevice(); // GraphicsDevice класс описывает графические устройства, которые могут быть доступны в определенной среде графики. try { robot=new Robot(screen); } catch (AWTException ex) { } JButton bt1 = new JButton("Start"); // создаем кнопку panel.add(bt1); // добавляем нашу кнопку на панель bt1.addActionListener(new ActionListener() { // добавляем обработчик на нашу кнопку public void actionPerformed(ActionEvent e) { for(int i=0; i<10; i++) // здесь и происходят все действие с нашим роботом { robot.mouseMove(500, 500 + 15 * i); // двигаем мышку на заданную координату x,y robot.mousePress(InputEvent.BUTTON1_MASK); // нажимаем левую кнопку мыши robot.delay(300); // 300 миллисекундная пауза robot.mouseRelease(InputEvent.BUTTON1_MASK); // отжимаем левую кнопку мыши robot.delay(300); robot.keyPress('O'); // нажимаем кнопу 'O' с клавиатуры robot.keyRelease('O'); // отжимаем кнопу 'O' с клавиатуры robot.delay(300); robot.keyPress(KeyEvent.VK_DOWN); // нажимаем кнопу 'DOWN' с клавиатуры robot.keyPress(KeyEvent.VK_DOWN); robot.keyPress(KeyEvent.VK_DOWN); } } }); Container pane = getContentPane(); // создаем контейнер pane.add(panel); // добавляем нашу панель в контейнер pack(); // задает размер нашему фрейму исходя из размеров нашей кнопки } } public class MyRobot { public static void main(String[] args) { myFrame frame = new myFrame(); // создаем объект класса myFrame frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // задаем действие обработчику на кнопку "крестик" frame.show(); // выводим на экран нашу форму } }
На примере этой программы, мы научились использовать класс JAVA robot.
Wikipedia: O is a letter of the Cyrillic script.
Получайте новые статьи блога прямо себе на почту
Большое спасибо за информацию! Желаю удачи!
Спасибо за статью. С Новым годом.
Очень интересно, спасибо за статью! Удачи и с Новым годом!
Спасибо, очень полезно знать и уметь в этом разбираться.
Познавательная статья! Спасибо. С наступающим Новым годом! Жду в гости.