Javafx 返回null的TextField

Javafx 返回null的TextField,javafx,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().isSelec

每次我在
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());
}

这一行的问题在于:

@FXM
private TextField nome = new TextField();
当您这样做时,您正在将屏幕上显示的对象的引用替换为您创建的新对象。如果要引用通过FXML创建的对象,只需使用:

@FXML
private TextField nome;
FXML文件中的文本字段应具有与变量名称匹配的fx:id:

<TextField fx:id="nome" />

返回
null
?你是怎么查的。此外,您是否从fxml初始化了nome,或者这只是一个初始化字段,以防止NPE访问它。这样可以修复NPE,但场景中不会显示包含
TextField
的字段。还有
@FXM
是什么类型的注释?我希望
@FXML
。。。