public void setBtnAction(ActionEvent event) {
String leagueNameString = nameFld.getText();
if ((leagueNameString == null) || (leagueNameString == "")) {
nameFld.setPromptText("Enter value league name");
} else {
CoreAppFXMLController cp = new CoreAppFXMLController();
cp.nameOfTheLeague.setText(leagueNameString);
}
}
}
我尝试了文本和标签,但没有一个有效。 nameOfTheLeague在CoreAppFXMLController类中受到保护。它返回NullPointerException。 id在fxml中没问题。
答案 0 :(得分:0)
您创建CoreAppFXMLController
的方式,只需调用构造函数即可。 其他任何事情都不会完成。这意味着没有创建节点,因为没有加载fxml
文件,当然永远不会分配cp.nameOfTheLeague
。
您必须使用FXMLLoader
从Node
文件创建fxml
的和控制器,并为Node
进行分配与ids。
如果您不知道如何使用FXMLLoader
来获取控制器,请在此帖中进行演示:https://stackoverflow.com/a/24716026/2991525
此外,如果您比较String
使用string1.equals(string2)
,而不是string1 == string2
。