JavaFX - переключение сцен в EventHandler - PullRequest
0 голосов
/ 01 мая 2019

Я создаю страницу регистрации, и как только пользователь нажимает кнопку регистрации, я хочу, чтобы сцена переключилась на мой макет budgetView.(Это файл FXML).

Я попытался расширить свой контроллер регистрации с помощью класса Application и переопределить метод start, но он продолжал выдавать ошибку.Это путь, который мой учитель пытался заставить меня попробовать.Я также создал еще один primaryStage в своем контроллере, и это сработало, но моя предыдущая сцена не закрылась, а просто создала еще одну AnchorPane поверх существующей сцены SignUp.Я хочу просто переключиться с одного представления FXML на другое, когда обработчик событий будет инициирован и успешен.

Обработчик событий

try {
                SignUpDAO.insertUser(txtFieldEmail.getText(), txtFieldFirst.getText(), txtFieldLast.getText(),
                        passFieldPassword.getText());
                resultArea.setText("User inserted! \n");

                // SUPPOSED TO OPEN NEW SCENE THROWS
                // Exception in thread "JavaFX Application Thread" java.lang.RuntimeException:
                // java.lang.reflect.InvocationTargetException
//              start(primaryStage);

Переопределенный метод запуска

        // TODO Auto-generated method stub
        try {

            this.primaryStage = primaryStage;
            AnchorPane budgetLayout = FXMLLoader.load(getClass().getResource("MainLayout.fxml"));


            // SignUp Layout
            Scene scene1 = new Scene(budgetLayout);
            primaryStage.setScene(scene1);
            primaryStage.show();
...