如何在j2me里做个像JTabbedPane那样的多页面板组件?不好意思,我刚刚接触这些,请大家多多帮助!

解决方案 »

  1.   

    专门给你写的,自己去参考一下吧.
    import javax.microedition.lcdui.*;
    public class TabbedPane extends Canvas
    {
        int tabbpos=0;    String[] str={"第一个内容","第二个内容","第三个内容"};
        public TabbedPane()
        {    }
        protected void paint(Graphics g)
        {
            g.setColor(255,255,255);
            g.fillRect(0,0,getWidth(),getHeight());
            g.setColor(255,0,0);
            g.fillRoundRect(20*tabbpos,0,40,20,5,5);
            g.drawString(str[tabbpos],20,50,20);    }
        public void keyPressed(int keyCode)
        {
            if(this.getGameAction(keyCode)==this.LEFT && tabbpos!=0) {tabbpos--;repaint();}
            if(this.getGameAction(keyCode)==this.RIGHT && tabbpos!=2) {tabbpos++;repaint();}
        }
    }
      

  2.   

    如果你觉得上面那个还是有一点问题,看这个吧.
    import javax.microedition.lcdui.*;
    public class TabbedPane extends Canvas
    {
        int tabbpos=0;    String[] str={"第一个内容","第二个内容","第三个内容"};
        public TabbedPane()
        {    }
        protected void paint(Graphics g)
        {
            g.setColor(255,255,255);
            g.fillRect(0,0,getWidth(),getHeight());        
            g.setColor(200,200,200);
            g.fillRoundRect(0,0,80,20,5,5);
            g.fillRect(0,20,getWidth(),getHeight()-20);
            g.setColor(255,0,0);
            g.fillRoundRect(20*tabbpos,0,40,20,5,5);
            g.drawString(str[tabbpos],20,50,20);    }
        public void keyPressed(int keyCode)
        {
            if(this.getGameAction(keyCode)==this.LEFT && tabbpos!=0) {tabbpos--;repaint();}
            if(this.getGameAction(keyCode)==this.RIGHT && tabbpos!=2) {tabbpos++;repaint();}
        }
    }我没有用图片,不然你看不到了.呵呵.
      

  3.   

    你不是上次在J2me区提过这个问题的吗?
      

  4.   

    to hoverlees(好棒) :
    谢谢你的帮助啊!我是在那问过。
    我想实现上面是多页面板,下面的是那些高级UI,象list等,上面是一级菜单,下面是它的二级菜单。