-1

我有一个TextField,其中有一些文本,但我想在某些事件上更改该文本,但我得到了NullPointerException.

我正在使用setText()方法,但仍然无法正常工作。我正在从其他类调用该函数。

有什么帮助吗?

提前致谢。

4

2 回答 2

6

在控制器类定义的开头:

@FXML private TextField txtDescription;

在初始化方法中,添加:

txtDescription = new TextField();

在作用于该文本字段的方法中,例如:

txtDescription.setText("This is my new text.");
于 2012-06-15T17:55:54.877 回答
0

确保您的.fxml文件中有一个 TextField 定义,其中包含以下内容:

 fx:id="myCoolTextField"

如果没有,请使用以下内容在 display() 方法中初始化文本字段:

myCoolTextField = new TextField();

您还可以覆盖特殊的initialize()方法。每次更新场景时都会调用此方法。

@FXML
public void initialize() {
    myCoolTextField.setText("Here is my updated text.");
}
于 2017-12-27T11:13:18.443 回答