Hey, ich habe zwei FXML Dateien erstellt und würde gerne über ein MenuItem die Scene wechseln. Wenn die onAction Methode auf einen Button gelegt ist, funktioniert dies auch. Möchte ich dies aber über ein Menu Item steuern, bekomme ich bei dem selben Code den Fehler, dass diese Stage null sei. Anbei meine Controller Class. Schonmal vielen dank fürs Reinschauen
Java:
public class Controller implements Initializable {
@FXML
private MenuBar menuBar1;
private Stage stage;
private Scene scene;
private Parent root;
@FXML // funktioniert nur über Button, nicht aber über Menu Item
public void toMainScene (ActionEvent event) throws IOException {
root = FXMLLoader.load(getClass().getResource("Main.fxml"));
stage = (Stage) menuBar1.getScene().getWindow(); // satage is null
scene = new Scene(root);
stage.setScene(scene);
stage.show();
}
@FXML // funktioniert
public void toInputScene (ActionEvent event) throws IOException {
root = FXMLLoader.load(getClass().getResource("Input.fxml"));
stage = (Stage)((Node)event.getSource()).getScene().getWindow();
scene = new Scene(root);
stage.setScene(scene);
stage.show();
}
@Override
public void initialize(URL arg0, ResourceBundle arg1) {
// TODO Auto-generated method stub
}
}