Я играю с javafx и пытаюсь добавить EventHandler или EventFilter (не совсем уверен, в чем разница прямо сейчас) к одной из моих сцен. Он должен просто обнаруживать любой ввод, от щелчков мышью до нажатия клавиш.
Мне удалось написать EventFilter для щелчков мышью, но я не могу заставить его работать для любого события в целом.
Моя текущая идея заключалась в следующем:
scene.addEventFilter(Event.ANY, new EventHandler<InputEvent>() {
@Override
public void handle(InputEvent event) {
System.out.println("Event detected! " + event.getSource());
}
});
Но при этом я получаю addEventFilter, выделенный красным цветом, с сообщением об ошибке, подобным этому:
The method addEventFilter(EventType<T>, EventHandler<? super T>) in the type Scene is not applicable for the arguments (EventType<Event>, new EventHandler<InputEvent>(){})
Я новичок в Java и не понимаю, что делать. Я хотел перехватывать входные события в своей сцене, но без необходимости иметь отдельный фильтр для каждого возможного события.