JavaFX-Controller ist immer null
Ich werde versuchen, in JavaFX 2 zu kommen und eine einfache Demo-App verwenden. Das Projekt besteht aus 3 Dateien, der Datei Main.java, der Datei Controller.java und der Datei sample.fxml.
In Sample.fxml habe ich den Controller deklariert:
<GridPane fx:controller="sample.Controller"
xmlns:fx="http://javafx.com/fxml" alignment="center" hgap="10" vgap="10">
</GridPane>
Und in meinem Main.java versuche ich auf den Controller zuzugreifen
FXMLLoader loader = new FXMLLoader();
Parent root = loader.load(getClass().getResource("sample.fxml"));
System.out.println(loader.getController()); //prints always null
Meine erste Idee war also, dass das Mapping nicht funktioniert. Also habe ich eine Initialisierungsmethode im Controller hinzugefügt.
@Override
public void initialize(URL url, ResourceBundle resourceBundle) {
System.out.println("init");
}
Die Ausgabe ist jetzt:
drin
Null
Meine Frage ist nun, wie ich auf den Controller einer bestimmten fxml-Datei zugreifen kann.