当前位置: 代码迷 >> J2ME >> j2me中怎么使用复选框
  详细解决方案

j2me中怎么使用复选框

热度:7328   发布时间:2013-02-25 21:34:22.0
j2me中如何使用复选框?
movies=new ChoiceGroup("Select Movies you like to see ",Choice.MULTIPLE);
  movies.append("Acton", null);
  movies.append("Romance", null);
  movies.append("Comedy",null);
  movies.append("Horror", null);


但不知道该怎样来获取选中的项。

------解决方案--------------------------------------------------------
用getSelectedFlags或getSelectedIndex()

你这个程序是书上的,源代码如下
Java code
import javax.microedition.midlet.*;import javax.microedition.lcdui.*;public class CheckBoxes extends MIDlet implements CommandListener{    private Display display;    private Form form;    private Command exit;    private Command process;    private ChoiceGroup movies;    private int movieIndex;        public CheckBoxes() {        display = Display.getDisplay(this);        movies = new ChoiceGroup("Select movies you like to see",Choice.MULTIPLE);        movies.append("Action", null);        movies.append("Romance", null);        movies.append("Comedy", null);        movies.append("Horror", null);        exit = new Command("Exit",Command.EXIT,1);        process = new Command("Process",Command.SCREEN,2);        form = new Form("movies");        movieIndex = form.append(movies);        form.addCommand(exit);        form.addCommand(process);        form.setCommandListener(this);    }         public void startApp(){            display.setCurrent(form);        }                public void pauseApp(){        }        public void destroyApp(boolean arg0){        }                public void commandAction(Command command,Displayable displayable){             if(command==exit){                 destroyApp(true);                 notifyDestroyed();             }             else if(command==process){                 boolean picks[] = new boolean[movies.size()];                 StringItem message[] = new StringItem[movies.size()];                 movies.getSelectedFlags(picks);                 for(int x=0;x<picks.length;x++){                     if(picks[x]){                         message[x] = new StringItem("",movies.getString(x)+"\n");                         form.append(message[x]);                     }                 }                 form.delete(movieIndex);                 form.removeCommand(process);             }        }        }
------解决方案--------------------------------------------------------
boolean picks[] = new boolean[movies.size()];
StringItem message[] = new StringItem[movies.size()];
movies.getSelectedFlags(picks);
for(int x=0;x<picks.length;x++){
if(picks[x]){
message[x] = new StringItem("",movies.getString(x)+"\n");
form.append(message[x]);
}
}
form.delete(movieIndex);
form.removeCommand(process);

------解决方案--------------------------------------------------------
boolean b[] = new boolean[4];
movies.getSelectedFlags(b);
for(int i = 0;i < b.length;i++){
if(b[i]){
System.out.println("第" + (i + 1) + "项被选中!");
}
}