J'essaye de manipuler le texte dans un TextField généré par Scene Builder. Mon contrôleur ressemble à ceci:Contrôleur JavaFX Scene Builder
@FXML
private TextField textDescr;
public void initialize(URL fxmlFileLocation, ResourceBundle resources) {
textDescr = new TextField();
assert textDescr != null : "fx:id=\"textDescr\" was not injected: check your FXML file 'provingGroundsUI.fxml'.";
Game.mainFSM.enter();
}
public void setText(String s) {
// TODO Auto-generated method stub
textDescr.setText(s);
}
Je reçois une exception NullPointerException. J'ai essayé bot avec et sans la partie textDescr = new TextField();
. Je ne comprends pas très bien ... Je pensais que JavaFX initialisait toutes les variables de l'interface utilisateur au début du programme.
Est-ce que le 'fx: id' du TextField dans le FXML correspondent au nom du champ dans le contrôleur? En d'autres termes, existe-t-il un
Oui, il a le bon fx: id – pieAre5quare
Assurez-vous @Override la méthode d'initialisation. – Wamasa