2015-03-21 2 views
1

У меня есть моя сцена JavaFX 8. Теперь, когда все остальное происходит, я хочу постоянно проверять любой KeyEvent/KeyCode во время работы программы. У меня есть временная шкала называется сроки установить неопределенный и я установил свой счетчик циклов неопределенный сИспользование JavaFX 8 Сцена, чтение ввода клавиатуры во время работы

timeline.setCycleCount(Timeline.INDEFINITE); 

Я ищу простой метод, который также является чистым и не будет делать мою программу порывистыми.

+0

Зачем вам нужен 'TimeLine' для прослушивания' KeyEvents'? – ItachiUchiha

+0

Я занимаюсь анимацией, вот и все, что у меня есть. Теперь я хочу иметь возможность делать такие вещи, как перезапуск анимации или отображение кнопки на экране или что-то еще, на основе ввода пользователем из ключей. Я только упомянул об этом, потому что беспокоился о перерывах. – JCoder

ответ

4

Вы можете использовать KeyEvent слушателя слушать, когда ключ pressed, release, typed или any из них. Неважно, есть ли у вас бесконечный цикл, запущенный в другом потоке, если пользователь нажимает кнопку, будет вызываться слушатель.

Вам просто нужно добавить listener к сцене и ключевому событию, которое вы хотите прослушать.

scene.addEventHandler(KeyEvent.KEY_PRESSED, (key) -> { 
     if(key.getCode()==KeyCode.ENTER) { 
      System.out.println("You pressed enter"); 
     } 
}); 
+0

спасибо, ItachiUchiha! – JCoder

+0

Я думаю, вы имеете в виду, что «это не имеет значения»? –

Смежные вопросы