Я хочу, чтобы моя программа JavaFX отвечала на события клавиатуры.
Я попытался добавить слушателей к корню Pane
, к началу Pane
, но он не отвечает на события!
Вот мой код:Не удается прослушать KeyEvent в JavaFX
AnchorPane root = new AnchorPane();
root.setOnKeyPressed(new EventHandler<KeyEvent>() {
@Override
public void handle(KeyEvent t) {
pressKey(t.getCharacter().charAt(0));
}
});
root.setOnKeyReleased(new EventHandler<KeyEvent>() {
@Override
public void handle(KeyEvent t) {
releaseKey(t.getCharacter().charAt(0));
}
});
root.addEventHandler(EventType.ROOT, new EventHandler<Event>() {
@Override
public void handle(Event t) {
if (t.getClass().equals(KeyEvent.class)) {
System.out.println("AAARGH! " + ((KeyEvent)t).getCharacter());
}
}
});
ПОЧЕМУ U НЕ РАБОЧИЕ, ключевые события? Я здесь что-то не так?
Конечно, события мыши отлично работают с тем же кодом.
Добавить слушателя на сцене? –
спасибо, что работает. – Chechulin