Ich habe gerade begonnen, JavaFX Scene Builder zu verwenden, um eine kleine Anwendung zu erstellen.
Es besteht aus einer Controller-Klasse 'Login.java', die zu 'login.fxml' gehört, in der die FXML-Datei 'registrierung.fxml' über eine Methode namens 'registrationClicked (ActionEvent event)' geladen wird:
%Vor%Nun möchte ich in der Controller-Klasse 'Registrierung.java' über den Wurzelknoten vboxRoot:
eine Referenz auf die Stufe von 'registrierung.fxml' bekommen %Vor%Allerdings führt 'getScene ()' immer zu einer NullPointerException. Die Controller-Klassen für beide FXML-Dateien werden im Szenen-Generator angepasst.
So richte ich den rood-Knoten in 'registrierung.fxml' ein:
%Vor%Was mache ich falsch?
Sie versuchen, die Szene für ein Objekt zu erhalten, das noch nicht initialisiert wurde. wenn Sie dieselbe Operation in
ausführen %Vor%oder wenn Sie ein Ereignis haben, das ausgelöst wird, sobald Sie auf etwas klicken (das ausgeführt wird, nachdem die Szene geladen wurde)
%Vor%Das würde funktionieren!
Ich bin auf dieses Problem gestoßen und habe gefunden, indem ich eine Methode wie diese aufgerufen habe (Wenn die Szene sichtbar wird und an den Knoten angehängt wird, wird dies ausgelöst):
%Vor%Dann kann ich später so etwas tun:
%Vor%Hoffe, das hilft.
Tags und Links java nullpointerexception javafx-8