Перенос текстового пользовательского интерфейса в JavaFX GUI - PullRequest
0 голосов
/ 05 августа 2020

Я начинающий программист, изучаю Java и делаю более простую версию Monopoly на университетскую тематику. В настоящее время у меня есть полнофункциональная текстовая версия игры, и теперь я хочу реализовать JavaFX GUI, но при этом могу использовать текстовую версию.

Репозиторий текстовых файлов версию можно найти здесь: https://github.com/desobob11/TeamP-Project/tree/Arnuv

Краткое изложение того, как работает код: существует класс Tile, который представляет плитку на доске, которая наследуется всеми укажите типы плиток c: шанс, сообщество, Go, парковка, испытательный срок (что-то вроде тюрьмы) и курс (эквивалент собственности в обычной монополии). Затем есть класс Student, который является эквивалентом игрока, и класс CourseList, который действует как контейнер для всех плиток. Приложение действует как «мозг» программы и включает в себя все эти классы, и, наконец, есть аспект пользовательского интерфейса, с которым мне нужна помощь:

Я создал интерфейс пользовательского интерфейса, который содержит все методы, которые нужны внутреннему коду для ввода-вывода, таким образом, серверной части все равно, является ли пользовательский интерфейс текстовым или графическим. Затем мой класс TextVisualizer реализует это. Я хотел, чтобы при создании своего GUI я просто снова реализовал пользовательский интерфейс и переписал все эти методы пользовательского интерфейса в терминах функций JavaFX. В идеале я бы хотел, чтобы это было так, чтобы я спрашивал пользователя, нужен ли им текстовый или графический интерфейс, а затем передавал соответствующий объект моему приложению и позволял ему запускаться оттуда. Что касается графики, я хотел иметь окно для доски и отдельные windows для статистики каждого студента (деньги, владение курсами и т. Д. c.). У меня настроена графика для доски и курсов, которые представляют собой просто PNG. Я очень не понимаю, как даже начать это строить, поскольку мои знания о том, как работает JavaFX, весьма ограничены. Если бы кто-нибудь мог указать мне на классы и код, необходимые для этого, я был бы очень благодарен. Спасибо!

1 Ответ

0 голосов
/ 05 августа 2020

Вопрос довольно общий, но я могу дать вам обзор некоторых основных c концепций JavaFX.

  • Прежде всего, убедитесь, что все ваши функции работают правильно в тексте - на основе версии.
  • Каждый экран вашего приложения будет иметь отдельный FXML файл.
  • Теперь вы можете использовать такой инструмент, как Gluon Scene Builder, для разработки макета каждого из экранов. Эта часть довольно проста, так как вам просто нужно перетащить необходимые элементы.
  • Чтобы связать элементы GUI с исходным кодом, вам нужно будет создать controller class для каждого файла FXML . Здесь вы можете написать свои функции JavaFX, которые будут просто вызывать ваши исходные функции.
  • В построителе сцен на правой панели меню вы можете найти раздел для кода. Здесь вы можете просто вставить имя своей функции JavaFX рядом с желаемым событием действия.

Я предлагаю вам начать с разработки файлов F XML и реализации переходов экрана, а затем переходить к отдельным элементам экрана. Обращайтесь к онлайн-руководствам, чтобы получить лучший gr asp.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...