TextField返回null

时间:2017-07-04 18:54:36

标签: javafx

每次在textField中键入一些文本并单击按钮时,要触发save()方法,文本字段将返回null。可能导致这种情况的原因是什么?

@FXM
private TextField nome = new TextField();

public void save() {
    Model model = new Model();
    model.setNome(nome.getText());
    model.setStatus(status.getSelectedToggle().isSelected());
}


public void initialize(URL location, ResourceBundle resources) {

    ModelController modelController = new ModelController();
    btnSalvar.setOnAction(event -> modelController.save());
    border.setCenter(modelController.onScreen());
}

1 个答案:

答案 0 :(得分:1)

问题在于这一行:

@FXM
private TextField nome = new TextField();

当您这样做时,您将对屏幕上显示的对象的引用替换为您创建的新对象。如果要引用通过FXML创建的对象,只需使用:

@FXML
private TextField nome;

FXML文件中的TextField应该具有与变量名称匹配的fx:id:

<TextField fx:id="nome" />