Java-апплет для многопанельного приложения - PullRequest
0 голосов
/ 05 февраля 2012

Я сделал Java-игру, но она основана на апплетах.Я хочу превратить его в отдельное приложение.К сожалению, у меня 0 знаний о приложениях Swing / Java, поэтому я не совсем уверен, с чего начать и как получить то, что я хочу.

Моя главная проблема заключается в том, что игровой экран по существу разделен на две части.«Экран игры» и то, что я называю «приборной панелью».Если вы можете вообразить эпоху империй, звездные корабли или любые другие игры типа RTS, вот что такое макет.

Итак, я хочу, чтобы на экране была своя собственная графическая панель (вся графика / анимация).Это делается с помощью класса графики и изображений), в котором также есть полосы прокрутки, поэтому размер игры не ограничен размером экрана.И я хочу, чтобы панель мониторинга была отдельной отдельной панелью, которая также использует графические методы.Но в итоге обе панели находятся в одном и том же окне.

Есть ли в любом случае это возможно?

PS: не стесняйтесь запрашивать любой код или скриншоты игры

Редактировать: если это возможно, как мне это сделать?

Ответы [ 2 ]

1 голос
/ 05 февраля 2012

Простые приложения Swing, обычно основанные на классе JFrame.Как я понимаю, вся игра отображается и не использует стандартные компоненты в пользовательском интерфейсе.Тогда, примерно, почти нет разницы между JApplet и JFrame классами.Если бы вы использовали определенные методы JApplet для загрузки ресурсов или что-то подобное, почти все они легко заменили бы на аналоги.

Вы можете создать класс компонента (путем расширения JComponent) и использовать его для визуализации основного окна игры.,И создайте еще один для отображения панели инструментов.Затем используйте BorderLayout в качестве менеджера компоновки на JFrame, поместите главное окно в центр и панель инструментов по любому краю.

На сайте Oracle есть довольно четкие инструкции: Как создавать кадры и Как использовать панели .

0 голосов
/ 05 февраля 2012

Я думаю, что ответ Мерсенна довольно хорошо это объясняет, хотя я бы подумал сделать рендеринг игры в BufferedImage и добавить его к (1002 * in) JLabel в JScrollPane.

...