Я реализовываю простое переключение окон, нажал Button1 (на Windows1) - открылось Windiws2, где есть Button2, нажал там уже Button2 - вернулось Windows1. Из примеров я нашел такую реализацию
registrationButton.setOnAction(event -> {
registrationButton.getScene().getWindow().hide();
FXMLLoader loader = new FXMLLoader();
loader.setLocation(getClass().getResource("/fxmlFiles/registration.fxml"));
try {
loader.load();
} catch (IOException e) {
e.printStackTrace();
}
Parent root = loader.getRoot();
Stage stage = new Stage();
stage.setScene(new Scene(root));
stage.showAndWait();
});
В другом контроллере я делаю такой же метод, только по сути изменяю FXML файл, что по идее должно меня вернуть к изначальному окну, и как бы да, это работает, но беда с прорисовкой, она происходит только при изменении размера окна, что ни есть хорошо, я так понял это все из-за hide(); по сути он реализует setShowing(false); но я не пойму как вернуть обратно отрисовку, что бы я спокойно переключался таким образом между окнами.
И в добавок, если кто-то подскажет хороший сайт со статьями по JavaFX, или актуальную книгу, буду весьма благодарен. Знаю, данный вопрос про книги уже задавали, но времена меняются, что-то устаревает. Спасибо.
ЭХ, как всегда после долгого тупника это оказало проще простого - медот showAndWait();в данном случае не подходит, всего навсего его необходимо заменить на show();
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости