日期:2014-05-20 浏览次数:20837 次
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) + "项被选中!");
  }
}