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

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

基于MIDP1.0實現組合按鍵

2019-11-18 12:44:04
字體:
來源:轉載
供稿:網友

  我們知道有些手機是不支持重復按鍵功能,為了模擬重復按鍵的功能,我們不得不使用一個線程來進行處理。對于重復按鍵網上已經有一些文章進行了探討,其實利用線程我們還可以實現組合按鍵的功能。當然,在手機這種設備上,利用組合按鍵進行游戲,有一定的限制,因為手機各個按鍵排列比較緊湊,同時按下兩個甚至三個按鍵在操作上會有局限性。但這也是仁者見仁、智者見智的問題,假如你想提高游戲的可玩性和娛樂性,組合按鍵仍是必不可少的條件。

  我定義了一個進行按鍵監聽的類,這個類實現了Runnable接口。在這個類里要害的一個數據結構就是一個字節型的數組,它是用來存儲當前所有被按下的鍵。我這里把數組的長度設定為2,主要是從應用的角度來考慮的,因為究竟在當前手機設備上同時按三個鍵進行游戲的不多。下面就是實現組合按鍵的核心代碼。

  按鍵事件類:

import javax.microedition.lcdui.*;

public class NewEvent implements Runnable{

        KeyEventCanvas c=null;

        /*
         * 用來判定是否有鍵被按下
         */
        PRotected boolean switchPoint;

        /*
         * 這個數組用來存儲所有同時被按鍵的鍵碼
         */
        protected byte[] keyCode;

        /*
         * 訪問數組的索引
         */
        byte index;


        public NewEvent(KeyEventCanvas c){
                this.c=c;
                keyCode=new byte[2];
        }

        /*
         * 這個方法把被按鍵的鍵碼存儲到數組中
         */
        public synchronized void startAction(int keyCode){
                this.keyCode[index]=(byte)keyCode;
                index=(byte)((index+1)%this.keyCode.length);
        }

        /*
         * 當某個鍵被釋放時,這個方法把該鍵存儲在數組中的鍵碼置為0
         */
        public synchronized void stopAction(int keyCode){
                for(int i=0;i<=this.keyCode.length-1;i++){
                        if(this.keyCode[i]==(byte)keyCode){
                                this.keyCode[i]=0;
                                break;
                        }
                }
        }
        
        /*
         * 這個方法用來判定是否有被按下的鍵,返回true表示有鍵按下,返回false表示沒有鍵被按下
         */
        public synchronized boolean getSwitchPoint(){
                this.switchPoint=false;
                for(int i=0;i<=this.keyCode.length-1;i++){
                        if(this.keyCode[i]!=0){
                                this.switchPoint=true;
                                break;
                        }
                }
                return this.switchPoint;
        }

        /*
         * 返回字節數組
         */
        public synchronized byte[] getKeyCode(){
                return this.keyCode;
        }
        
        public void run(){
                byte[] tmp=this.getKeyCode();
                while(true){
                        while(this.getSwitchPoint()){
                                /*
                                 * 通過這個循環遍歷數組,碰到被按下的鍵就進行處理
                                 */
                                for(int i=0;i<=tmp.length-1;i++){

                                        if(tmp[i]!=0){
                                                switch(c.getGameAction(tmp[i])){
                                                
                                                case Canvas.UP:
                                                        c.y--;//y是在Canvas中定義的一個屬性,表示y軸坐標
                                                        break;
                                                case Canvas.DOWN:
                                                        c.y++;
                                                        break;
                                                case Canvas.LEFT:
                                                        c.x--;//x是在Canvas中定義的一個屬性,表示x軸坐標
                                                        break;
                                                case Canvas.RIGHT:
                                                        c.x++;
                                                        break;
                                                }
                                        }
                                }
                                c.repaint();
                                try{
                                        Thread.sleep(10);
                                }catch(InterruptedException e){
                                        
                                }
                        }
                }
        }
}



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩在线视频免费观看| 欧美午夜xxx| 欧美成人中文字幕在线| 狠狠躁夜夜躁久久躁别揉| 亚洲电影免费在线观看| 久久天天躁日日躁| 一区二区三区四区精品| 国产精品午夜视频| 少妇激情综合网| 成人国产在线激情| 日韩精品在线免费观看视频| 亚洲精品电影久久久| 日本国产欧美一区二区三区| 97视频在线观看播放| 69视频在线免费观看| 欧洲成人在线视频| 亚洲福利视频二区| 精品国产一区二区三区久久| 国产精品大陆在线观看| 亚洲图片欧美日产| 精品福利视频导航| 欧美电影电视剧在线观看| 正在播放国产一区| 国产成人免费91av在线| 亚洲人成77777在线观看网| 中文字幕亚洲一区| 久久天天躁狠狠躁夜夜爽蜜月| 九九热最新视频//这里只有精品| 性色av一区二区咪爱| 久久精品一本久久99精品| 欧美激情国产高清| 久久久国产精品一区| 欧洲永久精品大片ww免费漫画| 日韩视频永久免费观看| 成人中文字幕+乱码+中文字幕| 亚洲欧洲在线观看| 高清欧美性猛交| 亚洲香蕉伊综合在人在线视看| 欧美日韩国产精品一区二区不卡中文| 欧美性猛交xxxx富婆弯腰| 精品久久香蕉国产线看观看gif| 精品久久久久久中文字幕大豆网| 久久综合伊人77777蜜臀| 97超级碰碰人国产在线观看| 久久免费精品视频| 91精品中文在线| 97精品久久久中文字幕免费| 国产热re99久久6国产精品| 久久久人成影片一区二区三区| 亚洲va欧美va国产综合久久| 日韩激情在线视频| 国产日韩精品综合网站| 亚洲视频在线免费看| 亚洲国产精品一区二区三区| 日韩在线观看精品| 亚洲国产精品va在线观看黑人| 91tv亚洲精品香蕉国产一区7ujn| 91av视频在线播放| 日韩av电影院| 亚洲大胆人体视频| 国语自产精品视频在免费| 亚洲精品成人久久电影| 92国产精品久久久久首页| 国产欧美日韩丝袜精品一区| 亚洲网在线观看| 2020久久国产精品| 午夜欧美不卡精品aaaaa| 91日韩在线播放| 久热精品视频在线免费观看| 亚洲精品少妇网址| 欧美第一黄色网| 欧美日韩在线影院| 海角国产乱辈乱精品视频| 精品偷拍一区二区三区在线看| 色偷偷亚洲男人天堂| 日韩在线观看免费全集电视剧网站| 国产精品a久久久久久| 日韩一区二区精品视频| 色悠久久久久综合先锋影音下载| 国产精品18久久久久久首页狼| 国产精品pans私拍| 国产在线高清精品| 亚洲精品国产综合区久久久久久久| 粉嫩av一区二区三区免费野| 亚洲欧美中文日韩v在线观看| 18性欧美xxxⅹ性满足| 亚洲丝袜在线视频| 国产精品国产三级国产专播精品人| 亚洲免费视频一区二区| 亚洲综合中文字幕在线观看| 欧美高跟鞋交xxxxxhd| 91精品国产91久久久久福利| 精品国内自产拍在线观看| 日韩精品视频中文在线观看| 精品国产乱码久久久久酒店| 欧美福利在线观看| 亚洲综合中文字幕在线观看| 亚洲欧美日韩国产中文| 国产精品亚洲美女av网站| 亚洲小视频在线| 久久久www成人免费精品张筱雨| 精品女同一区二区三区在线播放| 成人精品视频久久久久| 日韩欧美在线观看| 日韩在线视频二区| 国产国语videosex另类| 亚洲影院在线看| www.国产一区| 爽爽爽爽爽爽爽成人免费观看| 国产一区二区丝袜| 国产精品av在线| 国产精品入口夜色视频大尺度| 欧美久久精品午夜青青大伊人| 亚洲精品一区av在线播放| 91精品国产91久久久久久| 欧美福利视频在线| 高清一区二区三区日本久| 成人免费观看a| 欧美华人在线视频| 最新国产精品拍自在线播放| 日韩小视频在线观看| 欧美亚洲一区在线| 久久五月情影视| 亚洲丁香婷深爱综合| 欧美国产日韩xxxxx| 欧美黑人一级爽快片淫片高清| 成人黄色av免费在线观看| 欧美一级大片在线观看| 97超级碰碰碰| 久久久伊人日本| 日韩第一页在线| 亚洲综合大片69999| www.国产精品一二区| 午夜精品久久久久久久99热浪潮| 国产精品久久久久7777婷婷| 欧美精品一区三区| 久久久综合免费视频| 中文字幕久热精品视频在线| 亚洲男人第一av网站| 久久精品国产综合| 国产欧亚日韩视频| 国自在线精品视频| 懂色av中文一区二区三区天美| 欧美激情中文字幕乱码免费| 亚洲精品丝袜日韩| 国产在线精品自拍| 亚洲精选在线观看| 亚洲亚裔videos黑人hd| 国产精品旅馆在线| 韩国精品美女www爽爽爽视频| 成人福利网站在线观看| 欧美日韩另类在线| 亚洲一品av免费观看| 国产成人精品午夜| 91久久久久久久久久久久久| 中文字幕日韩精品有码视频| 最近2019年日本中文免费字幕| 欧美精品少妇videofree| 精品国产依人香蕉在线精品| 欧美日韩视频免费播放| 亚洲片国产一区一级在线观看| 国产精品自拍偷拍视频| 欧美精品videos性欧美| 91精品国产色综合久久不卡98|