Наприклад, натискання клавіші ENTER у вікні пошуку Google активує пошук
Я тільки що був введений в JavaFX і SceneБудівельник кілька днів тому я "я вивчаю основи тут. У мене є остання версія JavaFX і я використовую Scene Builder для полегшення подій події. Крім того, будь-які вказівки на відповідні навчальні посібники були б корисні. орієнтовані на розділ "Клавіатура" панелі кодування панелі "Сцена", особливо з подією "На ключових носіях" без результатів.
Ось "загальне уявлення про те, що я намагаюся зробити:
@FXML
Text Field theTextField;
@FXML
Button theButton;
@FXML
void ButtonPressed() {
//do stuff here
}
@FXML
//when ENTER is pressed the button is activated
void textFieldEnterPressed() {
ButtonPressed();
}
Відповіді:
8 для відповіді № 1У твоїй FXML
додати файл onKeyPressed
обробник
<TextField fx:id="yourTextField" onKeyPressed="#handleEnterPressed">
Реалізуйте обробник у вас Controller
@FXML
public void handleEnterPressed(KeyEvent event)
if (event.getCode() == KeyCode.ENTER) {
// do some actions
}
}
5 для відповіді № 2
У TextField, коли ви натискаєте Enter, ви отримуєте повідомлення через onAction
. У вашому коді Java можна додати:
@FXML
private void handleTFAction(ActionEvent event) {
TextField source = (TextField)event.getSource();
System.out.println("You entered: "+source.getText());
}
У вашому FXML (або через дизайнера JavaFX SceneBuilder) підключіть його до вашого OnAction події TextField.
<TextField onAction="#handleTFAction" ... />