亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

用NetBeans平臺開發J2ME游戲實例講解1

2019-11-17 06:23:27
字體:
來源:轉載
供稿:網友

  1. 必須先安裝 NetBeans IDE 4.0 和 NetBeans Mobility Pack 4.0,然后才能開始進行 J2ME MIDP 開發。有關下載和安裝完整環境的說明,請參見 J2ME MIDP 開發下載頁面http://www.netbeans.org/kb/articles/mobility_zh_CN.Html?!?. 創建 MIDP 應用程序 創建新的 J2ME MIDP 項目
  
  2. 創建新的移動應用程序:
  
  (1).選擇“文件”>“新建項目”(Ctrl-Shift-N)。在“類別”下選擇“移動”。在“項目”下選擇“移動應用程序”,然后單擊“ 下一步”。
  
  (2). 在“項目名稱”下輸入 HuaRongDao。將項目主目錄更改為您系統上的任何目錄。從現在起,我們將該目錄稱為 $PROJECTHOME。
  
  (3). 不要選中“創建 HelloMIDlet”復選框。單擊“下一步”。  選CLDC1.0 MIDP1.0,
  
  (4). 將 J2ME Wireless Toolkit 作為選定的目標平臺。
  
  (5). 單擊“完成”。IDE 將創建 $PROJECTHOME./HuaRongDao 項目文件夾。該項目文件夾包含所有的源和項目元數據,如項目 Ant 腳本。此時將在“項目”窗口中打開 HuaRongDao 項目。
  
  (6). 現在,我們來添加一個MIDlet, 右鍵單擊項目,選新建MIDlet,名字為HuaRongDao,不要寫package.點確定生成, 然后在生成后的 代碼里加入CommandListener支持,代碼框架如下:
  
  /* * HuaRongDaoMidlet.java *
  * Created on 2005年7月1日, 下午8:18
  */
  
  import javax.microedition.midlet.*;
  
  import javax.microedition.lcdui.*;
  
  /**
  
  *
  
  * @author lin
  
  * @version
  
  */
  
  public class HuaRongDaoMidlet extends MIDlet implements CommandListener{
  
  public void startApp() {
  
  }
  
  public void pauseApp() {
  
  }
  
  public void destroyApp(boolean unconditional) {
  
  }
  
  public void commandAction(Command c, Displayable d) {
  
  }
  
  3. 開始編碼
  
  (1)加入退出按鈕,這里,我們用TextBox這種高級UI來做例子:
  
  public class HuaRongDaoMidlet extends MIDlet implements CommandListener{
  
  private Display display;
  
  private final static Command CMD_EXIT = new Command("退出", Command.EXIT, 1);
  
  public HuaRongDaoMidlet(){
  
  display = Display.getDisplay(this);
  
  }
  
  public void startApp() {
  
  TextBox t = new TextBox("TextBox的第一個參數","TextBox的第二個參數",256,0);
  
  t.addCommand(CMD_EXIT);
  
  t.setCommandListener(this);
  
  display.setCurrent(mainList);
  
  }
  
  ......
  
  public void commandAction(Command c, Displayable d) {
  
  if (c == CMD_EXIT) {
  
  destroyApp(false);
  
  notifyDestroyed();
  
  }
  
  }
  
  }
  
  注重:A.關于j2me的api函數,可以在WTK的docs目錄當中查到。
  
  B.我們使用的是MIDP1.0的函數,2.0支持游戲函數,但是大部分原先的手機都不支持。
  
  C.TextBox是可輸入框,有標題,缺省內容和內容長度等參數。
  
  (2)創建一個處理圖片的類Images, 處理圖片的方式在2.0當中有了很大的改進,可以直接從一張圖片中按照坐標取一部分,但是1.0
  
  還沒有這個功能,所以我們使用Image數組來實現。
  
  首先,我們先來顯示一個圖片,來熟悉一下有關image的操作。首先,加入一個Image和包含它的ImageItem,因為Image本身不能顯示,
  
  必須包在ImageItem中,然后創建一個Form,把ImageItem加到Form中,最后在屏幕上顯示這個Form。
  
  public void startApp() {
  
  Image a;
  
  ImageItem i;
  
  Form props = new Form("測試頁");
  
  try
  
  {
  
  a = Image.createImage("/Duke.png");
  
  i = new ImageItem("java吉祥物",a,ImageItem.LAYOUT_DEFAULT,"圖片無法顯示");
  
  props.append(i);
  
  }
  
  catch (IOException e)
  
  {
  
  a = null;
  
  }
  
  props.addCommand(CMD_EXIT);
  
  props.setCommandListener(this);
  
  display.setCurrent(props);
  
  }
  
  編譯運行一下,發現沒有圖片,說明或者是指定的圖片位置不對或者是系統沒有找到,其中,createImage()中的文件路徑是關于項目
  
  根目錄/res/的,沒有錯,因此是系統沒有找到res目錄?!ile"HuaRongDao"property,選擇Libraries and Resources,把res的完
  
  全路徑加進去,再編譯就可以了。
  
  好了,測試成功了,現在可以開始編寫Images類,如下:
  
  import javax.microedition.lcdui.*;
  
  import javax.microedition.midlet.*;
  
  /**
  
  *
  
  * @author lin
  
  */
  
  public class Images {//保存常量
  
  //繪圖位置常量
  
  public static final int UNIT = 20;//方塊的單位長度
  
  public static final int LEFT = 20;//畫圖的左邊界頂點
  
  public static final int TOP = 22;//畫圖的上邊界頂點
  
  //地圖位置常量
  
  public static final int WIDTH = 4;//地圖的寬度
  
  public static final int HEIGHT = 5;//地圖的高度
  
  //地圖標記常量
  
  public static final byte CAOCAO = (byte) 'a'; //曹操的地圖標記
  
  public static final byte MACHAO = (byte) 'b';//馬超的地圖標記
  
  public static final byte HUANGZHONG = (byte) 'c';//黃忠的地圖標記
  
  public static final byte GUANYU = (byte) 'd';//關羽的地圖標記
  
  public static final byte ZHANGFEI = (byte) 'e';//張飛的地圖標記
  
  public static final byte ZHAOYUN = (byte) 'f';//趙云的地圖標記
  
  public static final byte ZU = (byte) 'g';//卒的地圖標記
  
  public static final byte BLANK = (byte) 'h';//空白的地圖標記
  
  public static final byte CURSOR = (byte) 'i';//光標的地圖標記
  
  //地圖組合標記常量
  
  public static final byte DLEFT = (byte) '1'; //組合圖形左邊標記
  
  public static final byte DUP = (byte) '2'; //組合圖形上邊標記
  
  public static final byte DLEFTUP = (byte) '3'; //組合圖形左上標記
  
  //圖片常量
  
  //public static Image image_base;//基本圖片
  
  public static Image image_Zhaoyun;//趙云的圖片
  
  public static Image image_Caocao;//曹操的圖片
  
  public static Image image_Huangzhong;//黃忠的圖片
  
  public static Image image_Machao;//馬超的圖片
  
  public static Image image_Guanyu;//關羽的圖片
  
  public static Image image_Zhangfei;//張飛的圖片
  
  public static Image image_Zu;//卒的圖片
  
  public static Image image_Blank;//空白的圖片
  
  public static Image image_Frame;//游戲框架的圖片
  
  public Images() {//構造函數
  
  }
  
  public static boolean init() {//初始化游戲中用到的圖片
  
  try {
  
  /*     以下的實現都是基于MIDP2.0的,我們在程序中采用的是基于MIDP1.0的實現
  
  image_base = Image.createImage("/huarongroad/BITBACK.png");
  
  image_Frame = Image.createImage(image_base, 126, 0, 145, 177,Sprite.TRANS_NONE);
  
  //Sprite類是用來翻轉圖片的,是MIDP2.0新新增加的支持游戲的特性
  
  image_Zhaoyun = Image.createImage(image_base, 0, 0, UNIT, 2 * UNIT,Sprite.TRANS_NONE);
  
  image_Caocao = Image.createImage(image_base, UNIT, 0, 2 * UNIT,2 * UNIT, Sprite.TRANS_NONE);
  
  image_Huangzhong = Image.createImage(image_base, 3 * UNIT, 0, UNIT,2 * UNIT,Sprite.TRANS_NONE);
  
  image_Machao = Image.createImage(image_base, 0, 2 * UNIT, UNIT,2 * UNIT,Sprite.TRANS_NONE);
  
  image_Guanyu = Image.createImage(image_base, UNIT, 2 * UNIT,2 * UNIT, UNIT,Sprite.TRANS_NONE);
  
  image_Zhangfei = Image.createImage(image_base, 3 * UNIT, 2 * UNIT,UNIT, 2 * UNIT,Sprite.TRANS_NONE);
  
  image_Zu = Image.createImage(image_base, 0, 4 * UNIT, UNIT, UNIT,Sprite.TRANS_NONE);
  
  image_Blank = Image.createImage(image_base, 1 * UNIT, 4 * UNIT,UNIT,UNIT,Sprite.TRANS_NONE);

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91久久久久久久久久久久久| 一个人看的www欧美| 久久久精品亚洲| 高清欧美性猛交| 日本中文字幕成人| 久久精品国产欧美亚洲人人爽| 18性欧美xxxⅹ性满足| 一本色道久久88综合亚洲精品ⅰ| 国产成人精品一区| 成人久久久久爱| 国产91成人video| 久久久免费av| 国产在线观看91精品一区| 欧美一区在线直播| 精品国偷自产在线视频99| 欧美亚洲第一区| 超碰91人人草人人干| 中文字幕av一区二区三区谷原希美| 最近2019年好看中文字幕视频| 欧美精品激情blacked18| 福利精品视频在线| 亚洲视频欧美视频| 国产精品视频白浆免费视频| 91嫩草在线视频| 亚洲精品福利免费在线观看| 国产一区二区三区在线观看视频| 日韩欧美在线播放| 国产一区二区三区丝袜| 91免费精品视频| 高清欧美电影在线| 国产精品扒开腿做爽爽爽男男| 欧美高清不卡在线| 国产丝袜一区二区| 中文字幕久久亚洲| 国产成人高潮免费观看精品| 久久久久久国产免费| 2019中文字幕全在线观看| 91亚洲国产成人久久精品网站| 欧美老少做受xxxx高潮| 欧美黄色片视频| 国产亚洲视频中文字幕视频| 最近更新的2019中文字幕| 国产欧美中文字幕| 国产精品免费久久久久影院| 亚洲日本中文字幕| 97精品国产97久久久久久免费| 国产精选久久久久久| 久久精品视频网站| 日本免费久久高清视频| 日韩精品中文字幕在线观看| 伊人久久久久久久久久| 国产婷婷97碰碰久久人人蜜臀| 69精品小视频| 成人国产精品久久久| 中文字幕精品视频| 51精品在线观看| 日韩欧美视频一区二区三区| 国产精品日韩av| 亚洲精品视频在线播放| 国产极品jizzhd欧美| 成人有码在线播放| 尤物精品国产第一福利三区| 亚洲最大成人免费视频| **欧美日韩vr在线| 日韩在线免费高清视频| 亚洲性无码av在线| 日韩亚洲成人av在线| 日韩亚洲欧美中文在线| 欧美做受高潮电影o| 欧美中文在线视频| 欧美精品videosex牲欧美| 久久久久久一区二区三区| 日本欧美一级片| 日韩在线视频免费观看高清中文| 岛国av一区二区| 国产日韩中文字幕在线| 日韩久久午夜影院| 北条麻妃在线一区二区| www.欧美免费| 91精品国产色综合久久不卡98| 国产精品美女久久久免费| 国产va免费精品高清在线| 成人免费在线视频网址| 亚洲最新av在线| 精品国产网站地址| 日韩综合中文字幕| 欧美亚洲国产视频| 久久久久久高潮国产精品视| 国产成人97精品免费看片| 亚洲无线码在线一区观看| 国产成人精品视| 91精品国产91久久久久| 欧美国产在线电影| 亚洲一区二区三区在线免费观看| 日韩在线国产精品| 久久久噜噜噜久噜久久| 久久国产精品亚洲| 92国产精品久久久久首页| 在线性视频日韩欧美| 国产+人+亚洲| 日韩av综合网| 亚洲欧洲偷拍精品| 亚洲视频自拍偷拍| 日韩高清免费观看| 亚洲第一精品久久忘忧草社区| 国产精品美乳一区二区免费| 九九精品视频在线| 亚洲香蕉成视频在线观看| 国产精品三级久久久久久电影| 欧美激情免费看| 日韩精品在线免费播放| 91精品久久久久久久久久另类| 日韩激情视频在线| 性欧美办公室18xxxxhd| 日韩一区二区欧美| 日本高清不卡的在线| 中文字幕日韩精品在线观看| 成人网址在线观看| 久久露脸国产精品| 亚洲欧美精品中文字幕在线| 欧美黑人巨大xxx极品| 日韩成人在线观看| 欧美肥臀大乳一区二区免费视频| 国产精品91一区| 亚洲bt天天射| 中文欧美在线视频| 4438全国亚洲精品在线观看视频| 精品国产一区二区三区四区在线观看| 91香蕉电影院| 国产aaa精品| 91精品国产91久久| 久久亚洲精品中文字幕冲田杏梨| 亚洲欧美一区二区三区在线| 亚洲成人av中文字幕| 不卡在线观看电视剧完整版| 欧美国产日韩一区二区在线观看| 欧美另类第一页| 国产精品美女视频网站| 狠狠色狠狠色综合日日五| 亚洲欧美成人一区二区在线电影| 国产在线不卡精品| 欧美日韩国产精品| 91精品国产91久久久久久吃药| 国产拍精品一二三| 欧美日韩一区二区免费在线观看| 成人激情在线观看| 91精品国产91久久久久久久久| 91精品国产777在线观看| 国产亚洲精品综合一区91| 97在线免费观看视频| 国产丝袜一区二区| 亚洲欧美日韩精品久久奇米色影视| 欧美在线视频a| 欧美日韩亚洲国产一区| 欧美大片欧美激情性色a∨久久| 成人免费淫片视频软件| 亚州精品天堂中文字幕| 国产www精品| 国内免费久久久久久久久久久| 亚洲天堂影视av| 欧美亚洲成人精品| 91高清视频免费观看| 国模精品视频一区二区三区| 欧美精品在线观看91|