Java 如何在onAction方法中从TextField获取文本?
当我试图从操作方法上的一个Java 如何在onAction方法中从TextField获取文本?,java,javafx-2,Java,Javafx 2,当我试图从操作方法上的一个按钮中的文本字段获取文本时,我收到了NullPointerException。这是我的文本字段定义: TextField textField = new TextField(); textField.setPromptText("Some text"); GridPane.setMargin(textField, new Insets(50, 50, 10, 50)); gridPane.add(textField, 0, 0); 这是我的按钮和它的动作方法: B
按钮中的文本字段
获取文本时,我收到了NullPointerException。这是我的文本字段定义:
TextField textField = new TextField();
textField.setPromptText("Some text");
GridPane.setMargin(textField, new Insets(50, 50, 10, 50));
gridPane.add(textField, 0, 0);
这是我的按钮和它的动作方法:
Button button = new Button("Button");
GridPane.setMargin(button , new Insets(0, 50, 0, 50));
gridPane.add(button , 0, 1);
button.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
String text = textField.getText();
}
});
按钮按钮=新按钮(“按钮”);
setMargin(按钮,新的插图(0,50,0,50));
添加(按钮,0,1);
setOnAction(新的EventHandler(){
@凌驾
公共无效句柄(ActionEvent事件){
String text=textField.getText();
}
});
我在这一行中得到了NullPointerException
:String text=textField.getText()代码>。如何在onAction方法中从textField中获取文本?一种可能是您正在方法或构造函数中隐藏您的textField
。这似乎是一种可能性,因为局部变量尚未声明为final
。
如果EventHandler
正在使用名为textField
的类成员变量,则替换
TextField textField = new TextField();
与
textField = new TextField();