По нажатию кнопки должна появляться новое окно, и закрываться старое.
Я использую контроллеры для каждого FXML. Обоработчик нажатия на кнопку также в контролле, а создание окна в main.
Желательно с помощью FXMLLoader.load(getClass().getResource("file.fxml"))
Если окно должно быть основным, а не модульным, то контроллеру кнопки надо иметь объект сцены.
Имея объект сцены вы сможете убрать оттуда текущую и положить нужную вам, действия теже самые, что при инициализации первого окна.
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости