Используя JavaFX 8 Scene, читайте ввод с клавиатуры во время работы

1

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

timeline.setCycleCount(Timeline.INDEFINITE);

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

  • 0
    Зачем вам нужен TimeLine для прослушивания KeyEvents ?
  • 0
    Я делаю анимацию, это все, что у меня есть. Теперь я хочу иметь возможность выполнять такие вещи, как, перезапускать анимацию или отображать кнопки на экране, или что-нибудь еще, основываясь на вводе данных пользователем с клавиш. Я упоминал об этом только потому, что беспокоился о перебоях.
Теги:
javafx
keyevent
keycode
scene

1 ответ

6
Лучший ответ

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

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

scene.addEventHandler(KeyEvent.KEY_PRESSED, (key) -> {
      if(key.getCode()==KeyCode.ENTER) {
          System.out.println("You pressed enter");
      }
});
  • 0
    Спасибо, ИтачиУчиха!
  • 0
    Я полагаю, вы имеете в виду "это не имеет значения"?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню