如何在 Java Scene Builder 上将两个参数作为 XML 传递给我的控制器 class?

How do I pass two parameters as XML to my controller class on Java Scene Builder?

我有一个 class,其中包含控制我的应用程序所需的所有方法,但其中一些需要三个参数

我正在使用 java 场景生成器,我正在创建一个 UI,现在我在登录菜单场景中。我放了一个 text_field 来写用户名,一个 password_field 来写密码然后我有一个 登录按钮,很简单。

问题是,我的登录函数需要两个参数:用户和密码。但是我只能在场景构建器选项中看到命名控制器选择方法的选项...我尝试在源代码中更改它但我收到一条警告说 XML 方法只能有一个或两个参数。我该如何解决这个问题?

我想我刚刚弄明白了。我已经声明了要从 fxml 中注入的变量,如下所示:

@FXML
private PasswordField pass;
@FXML
private TextField user;

private void login(String user, String password) {
    //method development
}

当我尝试使用这样注入的参数登录时:

@FXML
login(user,pass);

我会收到一条消息说 fxml 方法只能有 0 个或 1 个参数。我已经用以下方法解决了我自己的问题(或者至少我是这么认为的):

@FXML
private void login(ActionEvent event) {
    login(user.getText(),pass.getText());
}