Программирование Android и iPhone
Вконтакте Twitter Google+ Facebook RSS
Главная J2ME
Создаем игру с помощью визуальных средств NetBeans. Урок 1 – NetBeans Visual Designer

Бесплатная кросплатформенная среда разработки NetBeans отлично подходит для создания MIDlet приложений. Этот цикл из четырех уроков познакомит Вас с визуальными средствами разработки J2ME приложений. Вы создадите аркадную игру, используя NetBeans Visual Designer и NetBeans Game Builder. Схема экранов игры приведена на рисунке


NetBeans урок. Создание игры

Данный текст является переводом-адаптацией документа «LAB-6400: Create Your Own Mobile Game», который можно скачать на сайте java.com.sun.

В рамках первого урока мы познакомимся с NetBeans Visual Designer. Итак, для начала нам нужно установить полную версию NetBeans IDE. (Если вы не собираетесь связывать свою игру с внешним сервером, достаточно загрузить NetBeans Mobility).

1. Создаем новый проект в NetBeans

Первый шаг при создании любого NetBeanse приложения – создание проекта.

  1. Выбираем File>New Project или просто кликаем по иконке New Project на панели инструментов.
  2. Появится диалог New Project, где необходимо указать категорию проекта и его тип. Выбираем значения Mobile и MIDP Application соответственно.
  3. Нажмем Next и вводим название проекта Hello.
  4. Помечаем галочкой Set as Main Project и Create Hello MIDlet и жмем Next, а затем Finish. В результате откроется окно визуального дизайнера

  5. NetBeans Visual Designer
  6. Выбираем компонент Alert из категории Displayables в окне Palette в правой части экрана.
  7. Перетаскиваем иконку Alert в область Visual Designer Flow.
  8. В результате появится значок alert, таким образом мы только что добавили экранный компонент окна предупреждения к своему проекту.

  9. Visual Designer Flow
  10. Изменим заголовок alert на строку "Help", для этого просто измените свойство Title в области property в правой части IDE (Включить/выключить окно properties можно через меню Window>Properties).
  11. Следующим шагом мы изменим текст, который будет отображаться в окне предупреждения. Переведем визуальный редактор в режим редактирования экрана. Для этого нужно просто нажать кнопочку Screen в его верхней панельке.
  12. Выберите компонент alert в выпадающем меню в верхней части окна. В результате будет отображаться окно alert компонента в Device Screen области документа.
  13. Подведите указатель мыши в окне редактирования к области text not specified и дважды щелкните ней рамочке, затем введите текст и нажмите Enter.
  14. Переключитесь обратно в редактор потоков (кнопка Flow над окном редактирования) и перетащите Help Command с паллеты на компонент form. Команда Help будет добавленf на компонент формы.
  15. Теперь свяжем эту команду нашим alert компонентом. Выберите helpCommand на форме и перетащите ее на компонент alert (в процессе перетаскивания должна отображаться линия со стрелкой).
  16. Таким образом, мы связали два компонента (Компонент alert автоматически настраивается на возврат к компоненту из которого он вызван, поэтому на экране появится не одна, а две стрелки, связывающие helpCommand и alert.

  17. Flow - связь alert и helpCommand

2. Сборка и запуск проекта в NetBeans

  1. Для запуска проекта можно выбрать меню Run>Run Main Project либо нажмите зеленую кнопочку плей, либо просто F6. При этом сохранятся все файлы, соберется проект, а затем запустится эмулятор с HelloMidlet
  2. Запустите приложение. В окне эмулятора должна отображаться форма Hello, нажмите кнопку Help. Не забудьте закрыть эмулятор после тестирования, прежде чем переходить к правке приложения.

3. Custom Component

Как видите, на панели компонент присутствует множество различных иконок. Вы можете сами разрабатывать компоненты и добавлять их на эту панель. На этом шаге мы добавим на панель компонент-заготовку. Скачайте файл 6400_mobilegame.zip и распакуйте его в какую-нибудь папочку. В этом архиве содержатся исходники примеров и необходимые нам ресурсы. Словом lab_root будем обозначать папку, куда Вы распаковали архив.

  1. Откройте проект File > Open Project.
  2. Выберите MobileGameApp в папке lab_root/exercises/exercise1/ и отметьте Open as Main Project.
  3. Проект откроется и добавится в таблицу Projects в IDE. Убедитесь, что проект открыт как главный. (Название проекта должно быть выделено жирным шрифтом. В противном случае щелкните правой кнопкой на узел и выберите Set as Main Project из всплывающего меню.)
  4. Раскройте в окне Project справа экрана ветку MobileGameApp>Source Packages>org.netbeans.j1.game>GameMIDlet.java и дважды щелкнете на файл. В результате откроется проект следующей структуры

  5. Структура MIDlet приложени
  6. Для добавления custom компонента на паллету выберите Tools > Palette > MIDP Visual Mobile Designer (или Tools > Palette > Mobillity Component в NetBeans 6.5). В результате появится Palette Manager.

  7. Palette Manager
  8. В этом окне щелкните на Add to Palette. Появится мастер добавления новых компонентов.
  9. На первой странице выберите проект из которого Вы хотите добавить компонент. В нашем случае нужно выбрать MobileGameApp.
  10. Нажмите Next и выберите class для добавления. По умолчанию этот диалог показывает только компоненты, имеющие исходники. Выберите класс org.netbeans.j1.game.MazeCanvas.
  11. В этом диалоге Вы можете также определить категорию, в которую Вы собираетесь добавить компонент. Для custom компонент выберите узел Custom Components.

  12. Менеджер палитры компонент
  13. Закройте palette manager. Компонент MazeCanvas теперь доступен для визуального редактирования.

  14. Палитра компонент

4. Определяем потоки (Flow) нашего MIDlet-а

Когда пользователь закончит игру, приложение должно сохранить очки, потребовав ввести userID. Очки должны добавляться в Top10 таблицу результатов. Если пользователь потом улучшить свой результат, таблица должна обновиться. Из окна с таблицей результатов пользователь может перейти в главное меню или закрыть приложение.

  • Перейдем в Flow Designer и перетащите компонент MazeCanvas из паллеты в Flow Designer. Компонент MazeCanvas должен появиться в дизайнере потоков. Этой простой операцией мы просто добавляем экранный компонент в редактор. В окне редактора потоков щелкните на menuItem_0 и перетащите стрелку к MazeCanvas компоненту. Таким образом, мы создали связь между экранами. На рисунке показана конечная схема потоков нашего приложения.

  • потоки (Flow) нашего MIDlet
  • Нажмите правой кнопкой по MazeCanvas и выберите Properties. Измените свойство midlet(1.-con…) на this.

  • Property
  • Теперь мы должны ввести код, который запустит поток игры. Для добавления этой функции нужно щелкнуть по кнопке Source сверху окна GameMIDlet. Найдите метод svgMainMenuAction, для этого можете использовать либо Ctrl+F, либо Navigator в левом нижнем углу IDE.
  • В этом методе измените код на следующий
  • public void svgMainMenuAction() {
    // enter pre-action user code here
       String __selectedElement =
         etSvgMainMenu().getMenuElementID(getSvgMainMenu().getSelectedIndex());
       if (__selectedElement != null) {
          if (__selectedElement.equals("menuItem_0")) {
             switchDisplayable(null, getMazeCanvas());
             // write post-action user code here
             //TODO: [Exercise1][step4] It starts the game thread
              myGameThread = new GameThread(getMazeCanvas(), this);//[Exercise1]
              myGameThread.start();//[Exercise1]
             } else if (__selectedElement.equals("menuItem_1")) {

Заключение

Итак, на этом уроке мы познакомились с NetBeans Visual Designer и обозначили структуру нашей игры. В следующий раз мы займемся непосредственно игрой.


 


Баннер

ИНТЕРЕСНОЕ



Новости [1] [2] [3]... / Программинг ( Android/ iOS/ J2ME[1] [2] [3]) / Безопасность / Статьи / Софт ( Android / iOS) / Форум / Архив ( Symbian/ Статьи)
Рейтинг@Mail.ru

MobiLab.ru © 2005-2012
При использовании материалов сайта ссылка на www.mobilab.ru обязательна