Nano Hash - криптовалюты, майнинг, программирование

Приложение JavaFX с несколькими файлами fxml

Я просмотрел java-документы, онлайн-курсы/презентации java на YouTube и потоки в stackoverflow, но так и не нашел простого и отличного метода взаимодействия между различными представлениями приложений javafx. И в большинстве случаев примеры показывали только одно представление за раз.

Исследования, которые я провел до сих пор, заключаются в том, что файлу fxml нужен контроллер для подключения, и если у вас есть больше файлов fxml, правильным способом было бы получить контроллер для каждого из них.

Чего я до сих пор не понимаю, так это класса Abstract Parent. Почему создается экземпляр этого в приложении javafx fxml в начале метода запуска? Нужно ли мне снова создавать экземпляр, когда я пытаюсь загрузить новый файл fxml? То же самое касается FXMLLoader. Что такое конструкция fx:root? Другие исследования, которые я наблюдал, заключаются в том, что вам не обязательно нужно несколько этапов или сцен для загрузки нового файла fxml.

То, что я пытаюсь достичь, - это легкое и простое приложение для чата в javafx. Сейчас я работаю над клиентским приложением и планирую применить 3 файла fxml: войти в систему, общаться в чате и отправить нового пользователя. Я не знаю, следует ли мне создать новую сцену и сцену, только новую сцену или просто заменить файл fxml, по одному, внутри текущей сцены и сцены? По сути, я хочу, чтобы логин указывал мне на экран чата, новый пользователь создавал экран акк, и оба они указывали мне обратно на экран входа в систему.

Часть, с которой я борюсь, - это часть FXMLLoad, и кто является родителем и дочерним элементом, для кого или все они являются родителями? И как организовать файлы. Я загрузил два изображения, чтобы показать вам, как я думаю и к чему я хочу приблизиться. Действительно ли возможно загрузить новый fxml во время текущей сцены и сцены на основе ActionEvent? Если да, то как я могу подойти к этому?

Надеюсь, я ясно дал понять.

архитектура javafx моего приложения javafxархитектура моего приложения

экран входа экран входа


  • Чего я до сих пор не понимаю, так это класса Abstract Parent. Я не знаю, что это значит. Вы имеете в виду класс Application? И такой вопрос: я не знаю, должен ли я создать новую сцену и сцену, только новую сцену или просто заменить файл fxml, по одному, внутри текущей сцены и сцены? конечно, просто зависит от того, что вы хотите, чтобы пользовательский опыт был (например, одно окно или несколько окон). Я не думаю, что кто-то сможет ответить на этот вопрос за вас. 22.02.2017
  • Что такое конструкция fx:root? отвечает здесь. 22.02.2017
  • Хорошо, у вас много вопросов, это здорово. Я предлагаю вам, возможно, захотеть сломаться и задать по одному вопросу на вопрос и, возможно, предоставить пример кода в некоторых вопросах, чтобы лучше объяснить, что вы имеете в виду. 22.02.2017
  • Связано: Изменение сцен в JavaFX и Загрузка нового fxml в ту же сцену. 22.02.2017
  • Связано с тем, что никогда не находил простой и отличный способ взаимодействия между различными представлениями - вы можете передавать данные в различные контроллеры. Мне нравится использовать подход MVC (один из примеров), где я передаю общую модель instance для каждого контроллера, а модель реализована с использованием наблюдаемых свойств. 22.02.2017

Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..