//● IAppliプログラムの基本骨格 import com.nttdocomo.ui.IApplication; import com.nttdocomo.ui.Display; public class FirstIAppli extends IApplication{ public void start() { //Dojaコンソールに文字列を表示するのみ Sytem.out.println("ようこそIアプリの世界へ!!"); } } //------------------------------------------------------------------------------- //------------------------------------------------------------------------------- //Helloプログラム //携帯のディスプレイに"hello"と表示するだけの簡単なプログラムです。 //● @Canvasクラス(描画する画用紙をイメージしたクラス)を利用した例 import com.nttdocomo.ui.IApplication; import com.nttdocomo.ui.Graphics; import com.nttdocomo.ui.Canvas; import com.nttdocomo.ui.Display; public class FirstIAppli_Canvas extends IApplication{ public void start() { HelloCanvas helloCanvas = new HelloCanvas(); //携帯の現在のディスプレイ画面にセットする Display.setCurrent(helloCanvas); } } //Canvasクラスは抽象クラスなので、必ず継承して、抽象メソッドのpaintメソッドの //処理内容に文字や図、絵、写真などの描画動作を書く class HelloCanvas extends Canvas { public void paint(Graphics g){ g.drawString("Hello iAppli!", 30, 50); } } //------------------------------------------------------------------------------- //------------------------------------------------------------------------------- //● A-1 Panelクラス(ボタンやテキストフィールドなどを載せる土台)を利用した例1 import com.nttdocomo.ui.IApplication; import com.nttdocomo.ui.Display; import com.nttdocomo.ui.Panel; import com.nttdocomo.ui.Label; public class FirstIAppli_Panel extends IApplication{ // Constructor-------------------------- public FirstIAppli_Panel(){ super(); } //-------------------------------------- public void start(){ Panel panel; panel = new Panel(); Label label = new Label("はじめてのi-appli", Label.CENTER); panel.add(label); Display.setCurrent(panel); } //-------------------------------------- } //------------------------------------------------------------------------------- //------------------------------------------------------------------------------- //● A-2 Panelクラス(ボタンやテキストフィールドなどを載せる土台)を利用した例2 import com.nttdocomo.ui.IApplication; import com.nttdocomo.ui.Display; import com.nttdocomo.ui.Panel; import com.nttdocomo.ui.Label; public class FirstIAppli_Panel2 extends IApplication{ // Constructor-------------------------- public FirstIAppli_Panel2(){ super(); } //-------------------------------------- public void start(){ //内部クラスをnew Ipanel ipanel = new Ipanel(); Display.setCurrent(ipanel); } //内部クラス---------------------------------------------------------- class Ipanel extends Panel{ //コンストラクタ public Ipanel(){ Label label = new Label("はじめてのi-appliその2", Label.CENTER); this.add(label); } }//内部クラスの終わり--------------------------------------------------------- } //------------------------------------------------------------------------------- //------------------------------------------------------------------------------- //● A-2 Panelクラス(ボタンやテキストフィールドなどを載せる土台)を利用した例2をレイアウトなど改良 import com.nttdocomo.ui.IApplication; import com.nttdocomo.ui.Display; import com.nttdocomo.ui.Panel; import com.nttdocomo.ui.Label; public class FirstIAppli_Panel2 extends IApplication{ // Constructor-------------------------- public FirstIAppli_Panel2(){ super(); } //-------------------------------------- public void start(){ //内部クラスをnew Ipanel ipanel = new Ipanel(); Display.setCurrent(ipanel); } //内部クラス---------------------------------------------------------- class Ipanel extends Panel{ //コンストラクタ(表示位置や大きさなど少し改良してみる) public Ipanel(){ this.setLayoutManager(null); Label label = new Label("はじめてのi-appliその2", Label.CENTER); //label.setBackground(255); label.setSize(160,40); label.setLocation(50,100); this.add(label); setBackground(255); setTitle("よろしくね!"); } }//内部クラスの終わり--------------------------------------------------------- } //------------------------------------------------------------------- //------------------------------------------------------------------- //■ソフトキーを利用したイベント処理の例 import com.nttdocomo.ui.*; public class SoftKeyEvent01 extends IApplication { public void start() { Display.setCurrent(new Test1Frame()); } } //SoftKeyイベント処理を組み込んでみる class Test1Frame extends Panel implements SoftKeyListener { public Test1Frame(){ setTitle("Hello"); setSoftLabel(Frame.SOFT_KEY_1, "元気?"); setSoftLabel(Frame.SOFT_KEY_2, "TEST"); setSoftKeyListener(this); } public void softKeyPressed(int softKey) { switch(softKey){ case Frame.SOFT_KEY_1: Dialog dl = new Dialog(Dialog.DIALOG_YESNO ,"最近調子はいいですか?"); dl.setText("お元気ですか?"); dl.show(); break; case Frame.SOFT_KEY_2: Dialog dl2 = new Dialog(Dialog.DIALOG_INFO,"Test"); dl2.setText("This is Test."); dl2.show(); break; } } public void softKeyReleased(int softKye){} } //------------------------------------------------------------------------------- //-------------------------------------------------------------------------------