HelloWorld

作り方を知るには、完成品のソースを見るのが一番!
というわけで、サンプルソース解説に入ります。


開発キットを初めて起動したときは
「WidgetSample」というプロジェクトが読み込まれます。
名前の通り、ウィジェットjigletのサンプルなのですが、
初めてjigletを作る人には向いていないので(結構複雑
やはり「HelloWorld」から入ることにしましょう。


『読み込み』で、「HelloWorld」を選択。


すると、「HelloWorldを読み込みました」とメッセージが表示されるので
とりあえずそのまま『コンパイル実行』


実行画面


すると、エミュレータが起動し
実行デモ画面が表示されます。
これをjigletにすると、このまま携帯の画面に表示されるわけですね。


どんな動きをするのか分かったら
『ソースを開く』を選択。


HelloWorldソース

import jp.jig.jiglet.*;

public class HelloWorld extends Jiglet {
	public void main() {
		clearKey();
		
		for (;;) {
			int key = getKey();
			if (key >= 0) {
				return;
			}
			repaint();
			sleep(10);
		}
	}
	public void paint(boolean allDrawFlag) {
		setFont(0);
		setColor(0, 0, 0);
		drawString("HelloWorld", 10, 20);
		draw3DButton(100, 100, 20, 100);
	}
}

たった22行のソースです。
と言っても、HelloWorldにしては長いかw


jigletの構造としては
携帯からの操作など、制御を受け付けるmain関数と、
携帯に描画するpaint関数に分けられています。
最初の2文。import〜とpublic class クラス名(プロジェクト名)〜は、どのjigletでも固定です。
基本Javaですが、使えない関数などもあります。
jiglet独自の関数は、開発キットの『API』を参照してください。


サンプルソースを1行ずつ解説すると、


main関数
まず、clearKeyでキー情報(何キーが押されたとか)を初期化。
次に無限ループに入り、
携帯電話の何キーが押されているか、を取得。
何か押されていたら、returnで無限ループから出てプログラム終了。
押されなかったら、repaint()でpaint関数を呼び出し、
10m秒間処理を中断する。


paint関数
setFontで、文字の大きさを指定。(0=小、1=中、2=大)
setColorで、文字の色を指定。(RGB形式)
drawStringで、"HelloWorld"を座標(x,y)=(10,20)に表示。
draw3DButtonで、左上が座標(100,100)で幅20,高さ100の3Dボタンを表示。←何の為に表示しているのか謎w


jigletの構造は基本的に
main関数の中に無限ループを作り、
その中にgetKey()と、repaint()を入れて、
操作にあわせた画面をpaint関数で描画する

といった感じになります。


このサンプルでは、ただ文字と図形を表示しているだけなので
これだけを読んで、実際に携帯アプリを作ろうとしても、難しいです。
かと言って、他のプロジェクトのソースを読もうとしても
いきなり難易度アップについていけない><;


というわけで、このHelloWorldに少し手を加えたものを
次回紹介しようと思いますー。
( ´Д`)ノ