<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    騎豬闖天下

    J2ME隨筆,記錄成長的腳步

    統計

    留言簿(3)

    閱讀排行榜

    評論排行榜

    [J2ME-原創]畫系統菜單

    畫菜單也很簡單,也是一個坐標定位的問題

    以觸摸屏中實現畫菜單為例,部分代碼實現如下:

    /**
     * 畫系統菜單
     * 
     * 
    @author Du Changfeng
     * @Time  2010.03.05 
     
    */

    public class DrawMenu {

        
    private static boolean showMenu=false
    ;
        
    private static int menu_LineHeight = Font.getDefaultFont().getHeight() + 2
    ;
        
    private static int menu_X = EWLScreen.SCREEN_WIDTH /2
    ;
        
    private static int menu_Y = EWLScreen.SCREEN_HEIGHT - menu_LineHeight*7
    ;
        
    private static int menu_Width = EWLScreen.SCREEN_WIDTH/2
    ;
        
    private static int menu_Heigth = menu_LineHeight*7
    ;
        
    private static int highLightLineNum = 1
     ;
        
        
    /**
         * 畫menu菜單
         * 當使用觸摸屏時,畫此
         * 當按左右軟件時,顯示系統菜單界面,不畫這里
         
    */

        
    public final void paint(Graphics g){

            g.setClip(menu_X
    -1, menu_Y-1, menu_Width+1, menu_Heigth+1
    );
            
            g.setColor(
    0xd9d9f3
    );
            g.fillRect(menu_X, menu_Y, menu_Width, menu_Heigth);
            g.setColor(
    0x9f9f9f
    );
            g.drawRect(menu_X
    -1, menu_Y-1, menu_Width+1, menu_Heigth+1
    );
            g.drawLine(menu_X
    +2 , menu_Y + menu_LineHeight-2, menu_X+menu_Width-4, menu_Y + menu_LineHeight-2
    );
            
            String menuStr[]
    ={"菜單","1    繼續閱讀","2    記為書簽","3    快速選頁","4    返回大廳","5    下一話"}
    ;
                
            g.setColor(
    0x000000
    );              
            g.setFont(Font.getFont(Font.FACE_SYSTEM, Font.STYLE_PLAIN, Font.SIZE_SMALL));
            g.drawString(menuStr[
    0], menu_X + EWLScreen.SCREEN_WIDTH/4, menu_Y-1, Graphics.HCENTER|
    Graphics.TOP);
            g.drawString(menuStr[
    1], menu_X+4, menu_Y+menu_LineHeight+2, Graphics.LEFT |
     Graphics.TOP);
            g.drawString(menuStr[
    2], menu_X+4, menu_Y+menu_LineHeight*2+2, Graphics.LEFT |
     Graphics.TOP);
            g.drawString(menuStr[
    3], menu_X+4, menu_Y+menu_LineHeight*3+2, Graphics.LEFT |
     Graphics.TOP);
            g.drawString(menuStr[
    4], menu_X+4, menu_Y+menu_LineHeight*4+2, Graphics.LEFT |
     Graphics.TOP);
            g.drawString(menuStr[
    5], menu_X+4, menu_Y+menu_LineHeight*5+2, Graphics.LEFT |
     Graphics.TOP);
            
            g.setColor(
    0x000000
    );
            g.fillRect(menu_X
    +2, menu_Y+menu_LineHeight*highLightLineNum, menu_Width-4
    , menu_LineHeight);
            g.setColor(
    0xffffff
    );
            g.drawString(menuStr[highLightLineNum], menu_X
    +4
    ,
                    menu_Y
    +menu_LineHeight*highLightLineNum+2, Graphics.LEFT |
     Graphics.TOP);
        
        }

        
        
    public final void pointerPressed(int x,int y){
            
    if(showMenu)
    {

                
    if((x>menu_X && x< menu_X + menu_Width) &&

                        (y
    >menu_Y+ menu_LineHeight && y<menu_Y + menu_LineHeight*2)){
                    
    if(highLightLineNum==1)
    {
                        commandAction(continueCommand, 
    this
    );
                        showMenu
    =false
    ;
                    }
    else{
                        highLightLineNum
    =1
    ;
                    }

                }
    else if((x>menu_X && x< menu_X + menu_Width) &&
                        (y
    >menu_Y + menu_LineHeight*2&& y<menu_Y + menu_LineHeight*3)){
                    
    if(highLightLineNum==2)
    {
                        commandAction(bookmarkCommand, 
    this
    );
                        showMenu
    =false
    ;
                    }
    else{
                        highLightLineNum
    =2
    ;
                    }

                }
    else if((x>menu_X && x< menu_X + menu_Width) &&
                        (y
    >menu_Y + menu_LineHeight*3 && y<menu_Y + menu_LineHeight*4)){
                    
    if(highLightLineNum==3)
    {
                        commandAction(pageCommand, 
    this
    );
                        showMenu
    =false
    ;
                    }
    else{
                        highLightLineNum
    =3
    ;
                    }

                }
    else if((x>menu_X && x< menu_X + menu_Width) &&
                        (y
    >menu_Y + menu_LineHeight*4 && y<menu_Y+ menu_LineHeight*5 )){
                    
    if(highLightLineNum==4)
    {
                        commandAction(cancelCommand, 
    this
    );
                        showMenu
    =false
    ;
                    }
    else{
                        highLightLineNum
    =4
    ;
                    }

                }
    else if((x>menu_X && x< menu_X + menu_Width) &&
                        (y
    >menu_Y + menu_LineHeight*5 && y<menu_Y + menu_LineHeight*6)){
                    
    if(highLightLineNum==5)
    {
                        commandAction(nextCommand, 
    this
    );
                        showMenu
    =false
    ;
                    }
    else{
                        highLightLineNum
    =5
    ;
                    }

                }

            }

        }

        
        
    }

    posted on 2010-03-05 13:40 騎豬闖天下 閱讀(340) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 两性色午夜视频免费播放| 亚洲精品在线网站| 亚洲a∨无码精品色午夜| 成人免费视频69| 久久亚洲精精品中文字幕| 国产一区二区三区免费| 亚洲中文字幕无码日韩| 国产精品免费久久久久影院| 亚洲精品无码99在线观看| 日本一区二区在线免费观看| 亚洲第一页日韩专区| 国产国产人免费人成成免视频| 亚洲精品天堂成人片?V在线播放| a级毛片免费观看网站| 亚洲熟妇无码另类久久久| 国产免费一级高清淫曰本片| 亚洲AV无码成人精品区蜜桃 | 久久丫精品国产亚洲av| 国产精品免费一区二区三区四区| 亚洲国产二区三区久久| 中文字幕免费在线观看| 亚洲AV综合色区无码二区偷拍| 亚洲国产精品免费观看| 亚洲色在线无码国产精品不卡| 久久久久亚洲AV成人网| 精品一区二区三区免费视频| 亚洲乱亚洲乱妇无码麻豆| 免费无码中文字幕A级毛片| 亚洲中文无码av永久| 免费国产成人午夜电影| 国产成人1024精品免费| 亚洲黄色网站视频| 日韩一区二区在线免费观看| 国产精品黄页免费高清在线观看| 亚洲卡一卡2卡三卡4卡无卡三 | 亚洲欧美日韩中文无线码 | 久久精品亚洲精品国产色婷| 好爽…又高潮了毛片免费看| 理论片在线观看免费| 亚洲AV无码成人网站久久精品大| 免费电影在线观看网站|