corner imagecorner image
IDEPlatformPluginsDocs & SupportCommunityPartners

Пользовательские компоненты Visual Mobile Designer: использование элементов таблицы в приложениях Java ME

Visual Mobile Designer (VMD) позволяет разрабатывать приложения Java ME, используя функцию перетаскивания компонентов. С ее помощью можно задавать поток операций в приложении, а также общий стиль пользовательского интерфейса при использовании компонентов, поставляемых средой IDE или при использовании самостоятельно разработанных компонентов. VMD имеет в своем составе много стандартных компонентов, которые можно использовать для создания приложения: Lists, Alerts, Forms, Images и многие другие. Сюда также входят пользовательские компоненты, упрощающие создание многих сложных компонентов, например, экранов ожидания, заставок и экранов входа в систему.

Компонент TableItem позволяет быстро создавать таблицы, состоящие из одного или нескольких столбцов, каждый с областью заголовка и областью данных, повторяющихся для каждой записи. Таблицы могут быть больше экрана как по вертикали, так и по горизонтали. Пользователи могут использовать курсор для прокрутки в любом направлении. Использование компонента TableItem из Visual Mobile Designer (VMD) упрощает проектирование и реализацию таблиц в приложениях Java ME.

Если вы ранее не разрабатывали мобильные приложения в среде NetBeans, начните с изучения Краткого руководства пользователя по NetBeans Java ME MIDP.

Примечание. При использовании среды IDE NetBeans 6.8 обратитесь к учебному курсу Использование элементов таблицы в приложениях Java ME среды IDE NetBeans 6.8.

Содержание

Содержимое на этой странице относится к среде IDE NetBeans 6.9 или 7.0

Для работы с этим учебным курсом требуются программное обеспечение и ресурсы, перечисленные ниже.

Программное обеспечение или ресурс Требуемая версия
Среда IDE NetBeans с Java ME Версия 6.9 или более поздняя версия
Комплект для разработки приложений на языке Java (JDK) Версия 6

Принципы работы компонента TableItem

В данном примере показано, как использовать компоненты TableItem и TableModel в мобильном приложении. Демонстрируются основные свойства компонентов, а также принципы их использования для визуализации и управления данными в приложении Java ME внутри компонента SimpleTableModel. Пользовательский компонент TableItem, обсуждаемый в этом учебном курсе, использует таблицу из интерфейса SimpelTableModel, отображает данные и даже позволяет пользователям изменять их.

Помимо пользовательского компонента TableItem необходимо использовать два других компонента MIDP: TextBox и Form. Дополнительные сведения об этих и других пользовательских компонентах, входящих в палитру VMD, приведены в руководстве по палитре Visual Mobile Designer.

Установка и выполнение примера приложения

Перед тем как приступить к учебному курсу можно ознакомиться с окончательным результатом этой работы. Для установки примера приложения TableItemExample выполните следующие действия.

  1. Загрузите файл TableItemExample.zip.
  2. Распакуйте файл.
  3. В среде IDE откройте меню Файл, выберите команду Открыть проект и перейдите к папке с распакованным файлом.
  4. Откройте окно "Project". На экране должно быть следующее:

    Окно "Project" с примером элемента таблицы

  5. В окне "Проекты" щелкните узел проекта правой кнопкой мыши и выберите команду "Выполнить проект" или нажмите клавишу F6. После запуска приложения откроется окно эмулятора, отображающее это приложение, которое выполняется в эмуляторе устройства по умолчанию.
  6. В окне эмулятора нажмите кнопку под элементом "Launch." Эмулятор выводит на экран таблицу, как показано ниже:

    Эмулятор DefaultColorPhone, отображающий пример табличного приложения

  7. Изменение таблицы:
    • для перемещения курсора из ячейки в ячейку используйте стрелки на кнопке "Select";
    • для изменения содержимого ячейки нажмите кнопку под элементом "Edit Cell".
  8. Для закрытия приложения нажмите кнопку под элементом "Exit".

В начало

Создание таблицы с пользовательским компонентом TableItem

Теперь, после ознакомления с компонентом TableItem, можно рассмотреть процедуру создания этого приложения. Для создания приложения необходимо выполнить действия, указанные ниже.

  1. Создание проекта MyTableExample
  2. Добавление пакетов и визуального мидлета к проекту MyTableExample
  3. Добавление компонентов к проекту MyTableMIDlet
  4. Изменение проекта SimpleTableModel
  5. Добавление команд к компонентам Form и TextBox
  6. Соединение компонентов для создания потока операций в приложении
  7. Вставка исходного кода
  8. Выполнение проекта

Создание проекта MyTableExample

  1. Выберите в меню Файл команду Создать проект (CTRL+SHIFT+N). В разделе "Категории" выберите "Java ME". В разделе "Projects" выберите "Mobile Application" и нажмите "Next".
  2. Введите MyTableExample в поле "Project Name". В поле "Project Location" укажите локальный каталог. Далее в тексте этот каталог будет называться каталогом $PROJECTHOME.
  3. Снимите флажок с параметра "Create Hello MIDlet". Нажмите кнопку "Next".
  4. Оставьте "Sun Java Wireless Toolkit 2.5.2" в качестве выбранной платформы эмулятора. Нажмите кнопку "Finish".

Добавление пакетов и визуального мидлета к проекту "MyTableExample"

  1. Выберите проект MyTableExample в окне "Проект", откройте меню Файл и выберите команду Создать файл (CTRL+N). В области "Категории" выберите "Java". В разделе "File Types" выберите "Java Package". Нажмите кнопку "Next".
  2. Введите tableitemexample в поле "Package Name". Нажмите кнопку "Готово".
  3. Выберите пакет tableitemexample в окне "Проект", откройте меню Файл и выберите команду Создать файл (CTRL+N). В разделе "Categories" выберите "MIDP". В разделе "File Types" выберите "Visual MIDlet". Нажмите кнопку "Next".
  4. Введите MyTableItemMidlet в поля "MIDlet Name" и "MIDP Class Name". Нажмите кнопку "Finish".

Добавление компонентов к проекту "MyTableItemMidlet"

  1. Переключите визуальный мидлет на представление "Flow". Перетащите следующие компоненты "Screen" из окна "Palette" в окно "Flow Designer":
    • Form;
    • TextBox.
  2. Выберите компонент textBox и установите значение свойства компонента Title в окне "Свойства" равным Edit.
  3. Дважды щелкните компонент form, чтобы переключиться к представлению "Экран".
  4. Перетащите компонент Table Item из раздела "Элементы" палитры компонентов в компонент form. Компонент Table Item, добавленный в Screen Designer, выглядит следующим образом:

    Окно Screen Designer с компонентом TableItem на экране устройства

  5. Выберите компонент tableItem, откройте окно "Свойства" и введите TableItem Example в качестве значения свойства Label.
  6. Щелкните компонент tableItem правой кнопкой мыши и выберите команду "Свойства" во всплывающем меню.
  7. Щелкните стрелку (стрелка) в свойстве Table Model и выберите команду <Создать SimpleTableModel> в раскрывающемся списке
  8. Выберите "Close".
    Компонент simpleTableModel добавляется в раздел "Ресурсы".
  9. Добавленная модель simpleTableModel

Изменение SimpleTableModel

  1. В представлении "Экран" дважды щелкните компонент <Модель таблицы не определена>, чтобы открыть диалоговое окно "Значения".
  2. В диалоговом окне "Значения" выберите параметр "Использовать заголовок".
  3. Нажмите кнопку "Добавить строку" и "Добавить столбец" четыре раза, чтобы увеличить количество строк и столбцов на 4.
  4. Переименуйте заголовки таблицы в column 1, column 2, column 3 и column 4.
  5. Модель таблицы

  6. Для завершения нажмите "OK".
  7. Простая модель таблицы, назначенная компоненту TableItem

Добавление команд к компонентам Form и TextBox

  1. Откройте представление потока операций.
  2. Выберите элемент Команда выхода в разделе "Команды" на палитре компонентов. Перетащите ее в компонент form. Повторите эту операцию для команды Item.
  3. Выберите itemCommand в представлении "Экран". Откройте окно "Свойства" и измените значение свойства Label на Edit Cell.
  4. В представлении потока операций выберите команду Ok из раздела "Команды" палитры компонентов и перетащите ее в компонент textBox.
  5. Представление потока операций с добавленными командами

Соединение компонентов

Откройте представление потока операций, щелкните команду Запущено элемента "Мобильное устройство" и перетащите его в компонент form. Аналогичным образом соедините другие компоненты, как показано на следующем рисунке.

Окно "Поток операций" с компонентами, соединенными линиями команд

Вставка исходного кода

  1. Перейдите к представлению "Source".
  2. Найдите метод getOkCommand в исходном коде (строка 198) и вставьте следующий код после кода okCommand = new Command("Ok", Command.OK, 0); вместо комментария // write post-init user code here:
     	                                    
                } else if (command == itemCommand) {
                    
     		/* Эта часть кода выполняет
             * получение значений из модели таблицы
             */
             if (textBox != null) {      
            // Получение положения курсора в таблице.
             int row = tableItem.getSelectedCellRow();      
             int column = tableItem.getSelectedCellColumn() ;
            // Получение значения из модели таблицы
               Object value = simpleTableModel.getValue(column,row); 
            // Установка значения textBox
              if (value != null)
              textBox.setString(value.toString());          
                 else  
              textBox.setString("");
            } 
  3. Щелкните маркер ошибки (маркер ошибки) в строке 207 и выберите во всплывающем меню команду Создать поле в tableitemexample.MyTableItemMidlet, как показано на следующем рисунке.
  4. Изменение исходного кода

  5. Найдите метод getItemCommand в исходном коде (строка 189) и вставьте следующий код после кода itemCommand = new Command("Edit Cell", Command.ITEM, 0); вместо комментария // write post-init user code here:
    	     /* Эта часть кода ответственна за
             * получение значения из модели таблицы
             */
             if (textBox != null) {      
            // Получение позиции курсора в таблице.      
                      int row = tableItem.getSelectedCellRow();      
             int column = tableItem.getSelectedCellColumn() ;
            // Получение значения из модели таблицы
               Object value = simpleTableModel.getValue(column,row); 
            // Установка значения textBox
              if (value != null)
              textBox.setString(value.toString());          
                 else  
              textBox.setString("");
            } 
    	  

Запуск проекта

Для запуска главного проекта нажмите клавишу F6 или выберите в меню Выполнить команду Выполнить главный проект.

В начало

Документация Javadoc по компонентам TableItem и SimpleTableModel

Среда IDE NetBeans предоставляет документацию Javadocs по API-интерфейсу для компонентов TableItem или TableModel, а также для других компонентов, которые можно использовать в VMD. Чтобы просмотреть документацию Javadocs для компонентов TableItem и TableModel, выполните следующие действия:

  1. Наведите курсор на компоненты TableItem и TableModel в исходном коде и нажмите сочетание клавиш CTRL+SHIFT+ПРОБЕЛ или выберите в меню Исходный код команду Показать документацию.
    Во всплывающем окне появится документация Javadoc по этому элементу.
  2. Щелкните значок команды "Показать документацию во внешнем веб-обозревателе" ("Показать документацию во внешнем веб-обозревателе") во всплывающем окне, чтобы просмотреть подробные сведения о компоненте TableItem или TableModel в обозревателе.

В начало


Дополнительные сведения

В начало