我正在尝试填充创建网球锦标赛的应用程序的队列
当我单击“Crear Torneo”按钮(如图所示)时,我正在方法“crearTorneo”中创建队列。当我点击“Añadir”按钮(也如图所示)时,它会获取多个 TextField 中的信息并在“llenarCola”方法中创建一个对象,该对象返回的目的是填充队列。
现在,这是我的 llenarCola 方法:
@FXML
private NodoJugadores llenarCola(ActionEvent event)
{
int cedula = Integer.parseInt(textCedula.getText());
int edad = Integer.parseInt(textEdad.getText());
NodoJugadores jugador = new NodoJugadores(textNombre.getText(), cedula, textSexo.getText(), edad, textEquipo.getText(), 0);
return jugador;
}
这是我的 crearTorneo 方法:
@FXML
private void crearTorneo(ActionEvent event)
{
NodoJugadores jugador;
ColaJugadores cola = new ColaJugadores();
jugador = llenarCola();
显然,当我在 crearTorneo 中调用 llenarCola 方法时,我缺少 ActionEvent 参数,这让我想到了我的问题:如何在另一个方法上调用带有 ActionEvent 参数的方法?或者也许我以错误的方式处理这个问题?
这是我第一次使用JavaFX,所以也许还有另一种我不知道的方法(一个很好的实践方法)。我仍然需要仅在按下“Añadir”按钮时调用 llenarCola 方法。我正在使用 Scene Builder 2 和 Netbeans 8.0.2。
最佳答案
这与 Elegant way to handle Keyboard Input in JavaFX 基本相同
你可以做到
@FXML
private void llenarCola(ActionEvent event) {
llenarCola() ;
}
private NodoJugadores llenarCola() {
int cedula = Integer.parseInt(textCedula.getText());
int edad = Integer.parseInt(textEdad.getText());
NodoJugadores jugador = new NodoJugadores(textNombre.getText(), cedula, textSexo.getText(), edad, textEquipo.getText(), 0);
return jugador;
}
然后您可以调用无参数版本:
@FXML
private void crearTorneo(ActionEvent event){
NodoJugadores jugador;
ColaJugadores cola = new ColaJugadores();
jugador = llenarCola();
// ...
}
关于java - 如何在另一个方法上调用带有 ActionEvent 参数的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33721694/