@FXML
private void login(Event event) throws IOException {
String userName = emailId.getText().trim();
String password = passwordId.getText().trim();
try {
if(isValidCredentials(userName, password)){
System.out.println("Login Successfull");
Parent mainScreen = FXMLLoader.load(getClass().getResource("MainPage.fxml"));
Scene mainScene = new Scene(mainScreen);
Stage mainStage = (Stage) ((Node) event.getSource()).getScene().getWindow();
mainStage.hide();
mainStage.setScene(mainScene);
mainStage.setTitle("Main Screen");
mainStage.show();
}
} catch (SQLException e) {
e.printStackTrace();
}
}
在点击登录按钮时调用此登录方法。我想要的是在登录页面上按下回车键时要调用的相同方法。
答案 0 :(得分:2)
您可以将登录按钮设为默认按钮:这样当按下回车键时它会触发动作事件:
<Button fx:id="loginButton" text="Login" onAction="#login" defaultButton="true" />
除非按下 Enter 按键的控件具有键盘焦点,否则这将起作用,这可能就是您所需要的。例如,如果您还有文本字段,并且希望在这些文本字段上按下回车键时执行登录操作,则只需为文本字段设置onAction
处理程序:
<TextField fx:id="emailId" onAction="#login" />