/* iアプリ, MIDP での日時の扱い Time-stamp: "2003/11/11 Tue 18:35 hig" Saburo Higuchi 2003 http://www.math.ryukoku.ac.jp/~hig/ プログラム解説等 http://sparrow.math.ryukoku.ac.jp/~hig/course/juniors_2003/07/ */ import javax.microedition.midlet.*; import javax.microedition.lcdui.*; import java.util.Calendar; // カレンダーを使う public class ClockSample extends MIDlet { /** 起動するときに呼ばれる メソッド. 必須. */ public void startApp(){ ClockCanvas cc = new ClockCanvas(this); Display.getDisplay(this).setCurrent(cc); } public void pauseApp(){} public void destroyApp(boolean unconditional){} } class ClockCanvas extends Canvas implements Runnable{ MIDlet parent; ClockCanvas(MIDlet parent){ this.parent=parent; Thread th = new Thread(this); th.start(); } public void paint(Graphics g){ g.setColor(( (255<<16) + (255<<8) + (255)) ); g.fillRect(0,0,getWidth(),getHeight()); // 画面を消す g.setColor(0 ); Calendar c = Calendar.getInstance(); g.drawString( c.get(Calendar.HOUR) + "時" + c.get(Calendar.MINUTE) + "ふん" + c.get(Calendar.SECOND) + "秒くらいだよん" , 0,getHeight()/2 ,Graphics.LEFT|Graphics.BOTTOM ); } /** スレッドが start されると このメソッドに制御が移る */ public void run(){ while(true){ // 無限ループ // 定期的に repaint する. try { Thread.sleep(1000); // 1000ミリ秒休む. } catch ( Exception e ) { // 割り込みがあっても何もしない. } repaint(); } } } /* Local Variables: mode: java End: */