MIDPアプリ作成講座第2・3回で開発環境の解説を行いました。
今回からプログラムを作成する方法を解説していきます。
第4回としまして、プログラムを簡易操作できるソフトキーの使用方法についてです。ソフトキーとはボタン配置の一番上にある(はず)のボタンを意味します。ディスプレイには下に機能名が表示されます。「終了」する場合などはこのボタンを使用するのが一般的です。
プロジェクト作成
eclipseでプロジェクトを作成します。
[eclipseメニュー]->[File]->[New]->[Project…]->[J2ME]->[J2ME Midlet Suite]を選択してプロジェクトを作成します。
次にソースを作成します。
[eclipseメニュー]->[File]->[New]->[Other…]->[J2ME]->[J2ME Midlet]を選択して基礎となるプログラムを作成します。
サンプルプログラム
ではまずサンプルプログラムを紹介します。
sample04.java
import javax.microedition.lcdui.Command; import javax.microedition.lcdui.CommandListener; import javax.microedition.lcdui.Display; import javax.microedition.lcdui.Displayable; import javax.microedition.lcdui.Form; import javax.microedition.midlet.MIDlet; public class sample04 extends MIDlet implements CommandListener { private Form mainForm; private Command exitCmd = new Command("終了", Command.EXIT, -1); public sample04(){ mainForm = new Form("MIDletSample"); mainForm.addCommand(exitCmd ); mainForm.setCommandListener(this); } protected void startApp() { Display.getDisplay(this).setCurrent(mainForm); } public void commandAction(Command c, Displayable d) { if (c == exitCmd ) { notifyDestroyed(); } } protected void pauseApp() { } protected void destroyApp(boolean unconditional) { } }
プログラムの解説
左のソフトキーを押下してプログラムを終了します。
public class sample02 extends MIDlet implements CommandListener
まずイベントを受け取るためにCommandListener を実装します。
private Command exitCmd = new Command("終了", Command.EXIT, -1);
オブジェクトを作成し、exitCmd と定義しています。
Command.EXITはすでに定義された固定値です。この他には以下のものがあります。
BACK・CANCEL・HELP・ITEM・OK・SCREEN・STOP
public void commandAction(Command c, Displayable d) { if (c == exitCmd ) { notifyDestroyed(); } }
commandActionはイベント発生時に実行されます。
この中でどのイベントで実行されたかを判断して、プログラムの終了を行っています。
以上です。