Mega Code Archive

 
Categories / Java / J2ME
 

ChoiceGroup With Images

/*-------------------------------------------------- * ChoiceGroupWithImages.java * * Example from the book:     Core J2ME Technology * Copyright John W. Muchow   http://www.CoreJ2ME.com * You may use/modify for any non-commercial purpose *-------------------------------------------------*/ import javax.microedition.midlet.*; import javax.microedition.lcdui.*; public class ChoiceGroupWithImages extends MIDlet implements CommandListener {   private Display display;      // Reference to display object    private Form fmMain;         // Main form   private Command cmExit;      // Command to exit the MIDlet   private Command cmView;      // View the choice selected   private ChoiceGroup cgPrefs; // Choice Group of preferences   public ChoiceGroupWithImages()   {     display = Display.getDisplay(this);     try      {        // Create array of image objects       Image images[] = {Image.createImage("/up.png"), Image.createImage("/down.png"),                         Image.createImage("/help.png") };                                            // Create array of corresponding string objects                               String options[] = {"Upload", "Download", "Help"};                        // Create a choice group using arrays       cgPrefs = new ChoiceGroup("Select Option:", Choice.EXCLUSIVE, options, images);         }     catch (java.io.IOException e)     {       System.err.println("Unable to locate or read .png file");     }          cmExit = new Command("Exit", Command.EXIT, 1);     cmView = new Command("View", Command.SCREEN,2);     // Create Form, add components, listen for events     fmMain = new Form("");     fmMain.append(cgPrefs);     fmMain.addCommand(cmExit);     fmMain.addCommand(cmView);     fmMain.setCommandListener(this);      }   public void startApp()   {     display.setCurrent(fmMain);   }   public void pauseApp()   { }      public void destroyApp(boolean unconditional)   { }   public void commandAction(Command c, Displayable s)   {     if (c == cmView)     {       boolean selected[] = new boolean[cgPrefs.size()];             // Fill array indicating whether each element is checked        cgPrefs.getSelectedFlags(selected);       // Print to console the status of each element             for (int i = 0; i < cgPrefs.size(); i++)         System.out.println(cgPrefs.getString(i) + (selected[i] ? ": selected" : ": not selected"));     }     else if (c == cmExit)     {       destroyApp(false);       notifyDestroyed();     }    } }