Как программно имитировать нажатия клавиш со стрелками в Java FX
Я хочу, чтобы мое приложение JFX имитировало нажатия клавиш со стрелками (когда они зарегистрированы в текстовом поле), но я не могу понять, как отправить что-либо, кроме строк или байтов.
Я представляю что-то вроде этого:
static EventHandler<KeyEvent> KEY() {
E = new EventHandler<KeyEvent>() {
@Override
public void handle(KeyEvent ke) {
if (ke.getCode().equals(KeyCode.UP)) {
try {
//someObject.SimulateKeyPress(KeyCode.UP);
//OR
//coolObject.SendKey((char)KEY_UPKEY));
} catch (Exception ex) {
//Teleport goats
}
}
}
};
return E;
}
2 ответов
использовать класс робот
try {
Robot r = new Robot();
//there are other methods such as positioning mouse and mouseclicks etc.
r.keyPress(java.awt.event.KeyEvent.VK_UP);
r.keyRelease(java.awt.event.KeyEvent.VK_UP);
} catch (AWTException e) {
//Teleport penguins
}
экземпляр типа Robot создать нельзя. Вам лучше сделать:
Robot robot = com.sun.glass.ui.Application.GetApplication().createRobot();