Я пытаюсь создать свой собственный автокликер, используя Java
и пакет java.awt.Robot
, чтобы нажать и отпустить кнопку мыши.
(Первая попытка)
import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.InputEvent;
public class Autoclicker {
public static void main(String[] args) throws AWTException, InterruptedException {
// TODO Auto-generated method stub
Robot r = new Robot();
r.setAutoDelay(0);
Thread.sleep(15_000); // 15 seconds, to make sure I can move my mouse
// My program appears to stop my mouse from moving.
for(int i=0; i<1000; i++){ // Warning: I cannot move my mouse
//while the clicker is active. Maybe I shouldn't set the delay to 0.
r.mousePress(InputEvent.BUTTON1_DOWN_MASK);
r.mouseRelease(InputEvent.BUTTON1_MASK);
}
}
}
Однако кажется, что я не могу найти, когда пользователь вводит ключ из другого окна. (Обратите внимание, что эти окнане мои созданные javax.swing.JFrame
s, они могут быть любыми, от google chrome до блокнота.) Я попытался использовать этот автокликер и увидел, что он каким-то образом активировался, когда я нажимал кнопку в google chromeи блокнот;казалось, работает на все, что я использовал его. Автокликер, по-видимому, представлял собой переносимую программу с переносимым методом и решением.
Я посмотрел на java.awt.event.KeyListener
, но он требует прямого внимания. Я посмотрел на этот вопрос и увидел, что использовать его для своих целей было безнадежно, так как мне пришлось бы добавить оба к своим окнам, но я не думаю, что смогу надежно редактировать кодкаждой программы, которую я использую, чтобы добавить ее, поэтому я сдался.
Я посмотрел на привязки клавиш . Я мог только найти способы сбора ввода, если он был в том же окне.
java.awt.KeyboardFocusManager
меня интересует, в частности # getCurrentKeyboardFocusManager () , но я не могу найти какой-либо способ использовать это.
Вопросы:
Как я могу получить ввод с клавиатуры из другого окна, такого как Google Chrome и Блокнот? Существует ли какой-либо платформо-независимый способ?
Не верно ли я в своих заявлениях о возможности использования KeyListener, KeyBindings и KeyBoardFocusManager?