Я пытаюсь открыть другое приложение поверх того, что уже открыто. Другими словами, у меня есть начальное приложение, которое делает вещи, и у меня есть кнопка в окне, которое при щелчке должно открыть другое окно с характеристиками производительности и памяти.
Теперь я не уверен, что делать. У меня есть слушатель, который нужно проверить при нажатии кнопки, но как мне его загрузить, чтобы загрузить еще один класс FXML (приложение?).
Оба класса приложений находятся в разных пакетах.
Я делаю что-то подобное, чтобы загрузить несколько файлов FXML в согласованное окно, процесс один и тот же для одного, за исключением того, что вы присоединяете его к новой "стадии" вместо использования метода.setContent() TitledPane (любые переменные Я начинаю с tp_ - TitledPanes):
tp_edit_perm.setContent(FXMLLoader.load(getClass().getResource("fxml/edit_window.fxml")));
tp_report_pane.setContent(FXMLLoader.load(getClass().getResource("fxml/report_window.fxml")));
tp_manual_pane.setContent(FXMLLoader.load(getClass().getResource("fxml/manual_license_window.fxml")));
у вас будет что-то вроде:
Stage new_stage = new Stage();
Parent root;
root = FXMLLoader.load(getClass().getResource("fxml/some_fxml.fxml"));
Scene scene = new Scene(root);
new_stage.setScene(scene);
new_stage.show();
вы просто сделаете это в прослушивателе кнопок и переключитесь на "fxml/some_fxml.fxml" где бы то ни было, или какой бы ни был вызван ваш fxml.
FXMLLoader
и вызовите его методload()
. Попробуйте, и если это не сработает, обновите свой вопрос, чтобы показать свой код и объяснить, что идет не так.