/* iアプリ, MIDP の Canvas への Image の貼り方 Time-stamp: "2005/10/27 Thu 08:28 hig" Saburo Higuchi 2003 http://www.math.ryukoku.ac.jp/~hig/ プログラム解説等 http://www.a.math.ryukoku.ac.jp/~hig/course/juniors_2004/04/ */ import com.nttdocomo.ui.*; /** gif/jpg/png を Canvas に貼るサンプル */ public class ImageSample extends IApplication { /** 起動するときに呼ばれる メソッド. 必須. */ public void start(){ ImageCanvas cc=new ImageCanvas(this); Display.setCurrent(cc); } } class ImageCanvas extends Canvas { ImageSample parent; private Image im[]; String status; int x0,y0,x1,y1; /** コンストラクタ. 最初に1回だけ実行される */ ImageCanvas(ImageSample m){ this.parent=m; x0=getWidth()/3; y0=getHeight()/4; x1=getWidth()*2/3; y1=getHeight()/4; im=new Image[2]; MediaImage mi0=MediaManager.getImage("resource:///pose0.gif"); MediaImage mi1=MediaManager.getImage("resource:///pose1.gif"); // アプリのダウンロード後に Web サーバからイメージをダウンロード // ADF 設定で UseNetwork: http // MediaImage mi0=MediaManager.getImage("http://somehost/somepath/pose0.gif"); // MediaImage mi1=MediaManager.getImage("http://somehost/somepath/pose1.gif"); try{ mi0.use(); im[0]=mi0.getImage(); mi1.use(); im[1]=mi1.getImage(); status="gif 読み込み成功"; } catch (Exception e){ //"gif を読み込むことに失敗" status="gif 読み込み失敗"; } } public void paint(Graphics g){ // 特定の座標に, im[0] または im[0] を貼る. g.setColor(Graphics.getColorOfName(Graphics.WHITE)); g.fillRect(0,0,getWidth(),getHeight()); // 画面を消す g.drawImage(im[0],x0,y0 +0); // 絵を貼る g.drawImage(im[1],x1,y1 +0); // 絵を貼る g.drawString(status,0,getHeight()/2 +0); } } /* Local Variables: mode: java End: */