Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Создание нового приложения для CDC – профиль Foundation Profile

Читайте также:
  1. A Profile of the Woman. WhoDrinks to Excess
  2. Art Foundation/Fine Art personal statement
  3. CHAPTER 1. THEORETICAL FOUNDATIONS OF FINANCE.
  4. Company Profile
  5. Disintegration of the Golden Horde and foundation new states on the territory of the Kazakhstan - Mogolistan
  6. ECONOMICS: THE FOUNDATION OF BUSINESS
  7. Equipotential-line and potential-profile methods.

 

Этот раздел посвящен созданию приложения для CDC (Xlet) для профиля Foundation Profile с использованием эмулятора Embedded Software Architecture Emulator 1.14c компании Ricoh.

Выберите "File > New Project" (Ctrl+Shift+N). В области "Categories" выберите "Mobility". В "Projects" выберите шаблон "CDC Application". Нажмите кнопку "Next".

На экране "Name and Location" присвойте проекту имя MyRicohApplication и укажите местоположение проекта. Не снимайте флажок "Create Main Class". Нажмите кнопку "Next".

На странице "Select Platform" выберите "Ricoh 1.14c".

Нажмите кнопку "Finish". В результате создается новое приложение, главный класс которого открывается в редакторе исходного кода. Структура проекта показана на следующем рисунке. Обратите внимание, что автоматически созданный код основан на профиле. В данном случае главный класс получен на основе jp.co.ricoh.dsdk.xlet.Xlet. В этом профиле отсутствует поддержка редактора GUI Designer среды NetBeans.

Для запуска проекта выберите "Run > Run Main Project". Эмулятор выводит на экран текст "TODO implement makeUIControls".

Теперь можно выполнить отладку проекта, а также создать и выполнить тесты с помощью инфраструктуры JUnit.


import javax.microedition.lcdui.*;

import javax.microedition.midlet.*;

public class MobileTest extends MIDlet

implements CommandListener, ItemCommandListener{

private Display display;

private Form LogoForm,QForm;

public MobileTest() {}

//Список вопросов теста

private String quest[]={"Из всех домашних растений Вы предпочитаете кактусы.",

"Вы уже год не мыли полы, потому что можете случайно задеть компьютерные провода.",

"Отключение в районе электричества равносильно для Вас стихийному бедствию.",

"Вы можете не помнить, как выглядят Ваши друзья, но всегда знаете их ники.",

"Почтальоны пугаются, когда видят знак @ на отправляемых вами письмах.",

"Вы предпочитаете использовать принтер, а не ручку.",

"Вы очень удивляетесь, когда в видите надпись ЭТО МЫШЬ рядом с хвостаты зверем."};

private StringItem str; //Сторка

private ChoiceGroup myCG; //Варианты ответов

private TextField TFName,TFAge; //Имя и возраст

private int cqnum=0; //Номер текущего вороса

private int maxq=quest.length; //Число вопросов

private int summ=0; //Число набранных балов

//Создаем комманды

private Command CMD_GO = new Command("Вперед", Command.ITEM, 1);

private Command CMD_PRESS = new Command("Нажать", Command.ITEM, 1);

private Command CMD_FIRST = new Command("Начать", Command.SCREEN, 1);

private Command CMD_START = new Command("OK", Command.SCREEN, 1);

private Command CMD_NEXT = new Command("OK", Command.SCREEN, 1);

private Command CMD_FINISH = new Command("Закончить", Command.SCREEN, 1);

private Command CMD_EXIT = new Command("Выход", Command.EXIT, 1);

protected void destroyApp(boolean unconditional) throws MIDletStateChangeException

{ exitApp(); } // вызывает уборщик мусора

protected void pauseApp() { }

protected void startApp() throws MIDletStateChangeException

{ if(display == null)

{ initApp(); } }

private void initApp() //Этот метод выполняется при запуске мидлета

{ display = Display.getDisplay(this);

LogoForm=new Form("Mobile Test - Мир ПК"); //Создаем первую форму

LogoForm.setCommandListener(this);

//Добавляем рисунок. Обратите внимание, рисунок загружается в скобках try{}catch{}

try{ Image img=Image.createImage("/Logo.png");

ImageItem FormImg=new

ImageItem("МирПК - Тест",img,ImageItem.LAYOUT_CENTER,"");

LogoForm.append(FormImg);

}catch(java.io.IOException ex){}

//Создаем подпись

str = new StringItem("aRix", "www.mobilab.ru", Item.HYPERLINK);

LogoForm.append(str);

//подключаем ссылку

str.setDefaultCommand(CMD_GO);

str.setItemCommandListener(this);

//Добавляем подэкранные кнопки

LogoForm.addCommand(CMD_FIRST);

LogoForm.addCommand(CMD_EXIT);

//Объявляем обработчик команд

display.setCurrent(LogoForm);

//Создаем форму для вопросов, добавляем на нее кнопки и объявляем обработчик

QForm=new Form("Вопрос");

QForm.addCommand(CMD_NEXT);

QForm.addCommand(CMD_EXIT);

QForm.setCommandListener(this);

//Создаем список с вариантами вариантов.

myCG=new ChoiceGroup("Ответ",Choice.EXCLUSIVE);

myCG.append("Нет",null);

myCG.append("Иногда",null);

myCG.append("Да",null); }

private void questForm(int qnum) //Форма с вопросами

{ QForm.deleteAll(); //Очищаем форму

//Добавляем вопрос из массива

str = new StringItem("Вопрос", quest[qnum]);

QForm.append(str);

//Добавляем на форму вырианты ответов

QForm.append(myCG);

//Делаем окно формы видимым

display.setCurrent(QForm); }

public void exitApp()

{ notifyDestroyed(); } // уничтожение MIDlet-а

public void commandAction(Command c, Item item) {

if (c == CMD_GO) {

String text = "Переход по ссылке...";

Alert a = new Alert("URL", text, null, AlertType.INFO);

display.setCurrent(a); } }

public void commandAction(Command c, Displayable d) {

if (c == CMD_FIRST) { //Команда: загрузить первый экран

//Создаем форму

Form firstForm=new Form("Представьтесь пожалуйста");

//Размещаем на ней поля для ввода текста

TFName=new TextField("Ваше имя","",25,TextField.ANY);

TFAge=new TextField("Ваш возраст","",3,TextField.NUMERIC);

firstForm.append(TFName);

firstForm.append(TFAge);

//Добавляем команды

firstForm.addCommand(CMD_START);

firstForm.addCommand(CMD_EXIT);

firstForm.setCommandListener(this);

//Делаем окно формы видимым

display.setCurrent(firstForm); }

if (c == CMD_START) {//Команда о начале теста

questForm(0); }

if (c == CMD_NEXT) {//Команда перехода к следующему вопросу

cqnum=cqnum+1; //Увеличивем номер вопроса

if (cqnum==maxq-1){ //Проверяем, не последний ли это вопрос. Если да, меняем кнопку.

QForm.removeCommand(CMD_NEXT);

QForm.addCommand(CMD_FINISH); }

summ=summ+myCG.getSelectedIndex(); //Учитываем результат последнего ответа

questForm(cqnum); } //Переходим к следующему вопросу

if (c == CMD_FINISH) { //Команда о получении результата

summ=summ+myCG.getSelectedIndex(); //Учитываем результат последнего ответа

QForm.deleteAll(); //Очищаем форму

QForm.append(""+TFName.getString()+", ну что Вам сказать. ");//Выводим текст

//В зависимости от набранных очков выводим результат теста и соответствующую картинку.

if (summ<1){

QForm.append("Срочно купите себе компьютер!!!");

try{

Image img=Image.createImage("/1.png");

ImageItem FormImg=new

ImageItem("",img,ImageItem.LAYOUT_CENTER,"");

QForm.append(FormImg);

}catch(java.io.IOException ex){} }

else if (summ<3){

QForm.append("На вашем месте, я бы почаще включал компьютер.");

try{

Image img=Image.createImage("/2.png");

ImageItem FormImg=new

ImageItem("",img,ImageItem.LAYOUT_CENTER,"");

QForm.append(FormImg);

}catch(java.io.IOException ex){} }

else if (summ<7){

QForm.append("Вы вполне адекватный человек.");

try{

Image img=Image.createImage("/3.png");

ImageItem FormImg=new

ImageItem("",img,ImageItem.LAYOUT_CENTER,"");

QForm.append(FormImg);

}catch(java.io.IOException ex){} }

else if (summ<7){

QForm.append("Возможна мама была права, когда пыталась выкинуть Ваш компьютер.");

try{

Image img=Image.createImage("/4.png");

ImageItem FormImg=new

ImageItem("",img,ImageItem.LAYOUT_CENTER,"");

QForm.append(FormImg);

}catch(java.io.IOException ex){}

}

else

{

QForm.append("По-моему Вам давно пора лечиться (Если что, я в 7 палате).");

try{

Image img=Image.createImage("/5.png");

ImageItem FormImg=new

ImageItem("",img,ImageItem.LAYOUT_CENTER,"");

QForm.append(FormImg);

}catch(java.io.IOException ex){}

}

//Удаляем кнопку

QForm.removeCommand(CMD_FINISH);

}

if (c == CMD_EXIT){exitApp();} //Команда "Выход"

}

 

}

 


Дата добавления: 2015-10-29; просмотров: 131 | Нарушение авторских прав


Читайте в этой же книге: Библиотека классов Java - обзор | Менеджеры компоновок | Вызов конструктора из другого конструктора. | Пишем первый апплет | Рисуем прямоугольники и эллипсы |
<== предыдущая страница | следующая страница ==>
Передача данных в апплет| Журналистских расследованиях.

mybiblioteka.su - 2015-2024 год. (0.022 сек.)