当前位置: 代码迷 >> Java相关 >> 各位帮 小弟一下这个我实在不知道怎么做!
  详细解决方案

各位帮 小弟一下这个我实在不知道怎么做!

热度:352   发布时间:2009-10-19 13:20:54.0
各位帮 小弟一下这个我实在不知道怎么做!
1 .设计一个 MIDlet 程序,实现以下功能

程序有两个界面

程序启动后,进入到界面一,屏幕显示的是一个列表信息,可以多选,显示信息如下:

标题:你的兴趣爱好:选项: 1. 打篮球、 2. 踢足球、 3. 唱歌,跳舞等文艺活动, 4. 武术运动, 5. 其它

在此界面中对应三个按钮

按钮 1 :确定:点击后跳转到下一个页面,并且要把用户选择的显示显示在第二个界面中

按钮 2 :取消:点击后,清除用户的选择

按钮 3 :退出:点击后,退出当前程序。

界面二:屏幕显示的是一个文本输入框,标题为“你的兴趣爱好是:”,文本输入框的内容为前面选择的内容,文本框的内容不允许修改。

此界面对应两个按钮

按钮一:返回:点击后返回到前面的界面

按钮二:退出:点击后退出当前程序。

三、试验报告
搜索更多相关的解决方案: 兴趣爱好  打篮球  足球  

----------------解决方案--------------------------------------------------------
import javax.microedition.lcdui.Alert;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.List;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;


public class MyMidlet extends MIDlet implements CommandListener {
    List list;
    Command comBack,comExit,comOk,comCancel;
    Display display=null;
    String []str=null;
    Form form=null;
    Alert alert;
    public MyMidlet() {
        
        str=new String[]{"打篮球","踢足球",
                         " 唱歌,跳舞等文艺活动",
                         "武术运动","其他"};
        form=new Form("你的兴趣爱好是:");
        list=new List("你的兴趣爱好:",List.MULTIPLE,str,null);
        alert=new Alert("请选择你的爱好");
        alert.setTimeout(Alert.FOREVER);
        comBack=new Command("返回",Command.BACK,1);
        comExit=new Command("退出",Command.EXIT,1);
        comOk=new Command("确定",Command.OK ,1);
        comCancel=new Command("取消",Command.CANCEL,1);
        form.addCommand(comBack);
        form.addCommand(comExit);
        form.setCommandListener(this);
        list.addCommand(comCancel);
        list.addCommand(comOk);
        list.addCommand(comExit);
        list.setCommandListener(this);
    }
    protected void startApp() throws MIDletStateChangeException {
        if(display==null){
        display=Display.getDisplay(this);
        display.setCurrent(list);
        }
    }
   
    public void commandAction(Command c, Displayable d) {
        
        if (c == comOk) {
            // int i = list.getSelectedIndex();//单选才用此项
            // 得到多选的boolean数组
            boolean[] b = new boolean[list.size()];
            list.getSelectedFlags(b);
            //System.out.println(list.getSelectedFlags(b));
            for (int i = 0; i < b.length; i++) {
                if (b[i]) {// 若选中,则添加进form
                    String str1 = (String) list.getString(i);
                    form.append(str1);
                }
            }
            display.setCurrent(form);
        }

        if(c==comCancel){
            boolean []b=new boolean[list.size()];
            
            list.setSelectedFlags(b);
            //System.out.println(list.getSelectedFlags(b));
            
        }
   
            if(c==comBack){
                form.deleteAll();
                display.setCurrent(list);
            }
        
        if(c==comExit){
            try {
                destroyApp(false);
            } catch (MIDletStateChangeException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            notifyDestroyed();
        
        }
        
    }
    protected void destroyApp(boolean arg0) throws MIDletStateChangeException {
        

    }

    protected void pauseApp() {
        

    }

   

   

}
具体效果如下:

----------------解决方案--------------------------------------------------------
不错!
----------------解决方案--------------------------------------------------------
  相关解决方案