<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)  編輯  收藏


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


    網站導航:
     
    主站蜘蛛池模板: 亚洲国产成人久久综合碰| 67194成是人免费无码| 亚洲精品第一国产综合精品99| 最新国产精品亚洲| 成年丰满熟妇午夜免费视频| 亚洲一级毛片免费观看| 妻子5免费完整高清电视| 亚洲乱码在线观看| 免费黄色一级毛片| 美女被爆羞羞网站在免费观看| 国产婷婷高清在线观看免费| 亚洲精品免费网站| 亚洲熟妇无码av另类vr影视| 国产精品免费大片| 亚洲精品不卡视频| 毛片免费vip会员在线看| 色欲aⅴ亚洲情无码AV蜜桃| 深夜国产福利99亚洲视频| 两个人看的www免费视频| 亚洲第一成年人网站| 免费无码又黄又爽又刺激| 精品国产日韩亚洲一区在线| 亚洲一级特黄大片无码毛片 | 曰批视频免费30分钟成人| 亚洲男人天堂2022| 久久精品国产亚洲AV不卡| 亚洲av无码国产综合专区| 在线视频免费观看www动漫| 视频免费1区二区三区| 最新69国产成人精品免费视频动漫| 小说专区亚洲春色校园| 亚洲熟妇无码八AV在线播放| 巨波霸乳在线永久免费视频| 337p日本欧洲亚洲大胆精品555588| 日韩在线免费视频| 特级毛片aaaa免费观看| 亚洲黄色在线观看视频| 免费看国产曰批40分钟| 精品无码AV无码免费专区| 精品亚洲成A人在线观看青青| 久久精品亚洲一区二区|