Mega Code Archive

 
Categories / Java / J2ME
 

Immutable Image Example

//jad file (please verify the jar size) /* MIDlet-Name: ImmutableImageExample MIDlet-Version: 1.0 MIDlet-Vendor: MyCompany MIDlet-Jar-URL: ImmutableImageExample.jar MIDlet-1: ImmutableImageExample, , ImmutableImageExample MicroEdition-Configuration: CLDC-1.0 MicroEdition-Profile: MIDP-1.0 MIDlet-JAR-SIZE: 100 */ import javax.microedition.lcdui.Alert; import javax.microedition.lcdui.Canvas; import javax.microedition.lcdui.Command; import javax.microedition.lcdui.CommandListener; import javax.microedition.lcdui.Display; import javax.microedition.lcdui.Displayable; import javax.microedition.lcdui.Graphics; import javax.microedition.lcdui.Image; import javax.microedition.midlet.MIDlet; public class ImmutableImageExample extends MIDlet {   private Display display;   private MyCanvas canvas = new MyCanvas(this);   public ImmutableImageExample() {     display = Display.getDisplay(this);   }   protected void startApp() {     display.setCurrent(canvas);   }   protected void pauseApp() {   }   protected void destroyApp(boolean unconditional) {   }   public void exitMIDlet() {     destroyApp(true);     notifyDestroyed();   }   public Display getDisplay() {     return display;   } } class MyCanvas extends Canvas implements CommandListener {   private Command exit;   private ImmutableImageExample immutableImageExample;   private Image image = null;   public MyCanvas(ImmutableImageExample immutableImageExample) {     this.immutableImageExample = immutableImageExample;     exit = new Command("Exit", Command.EXIT, 1);     addCommand(exit);     setCommandListener(this);     try {       image = Image.createImage("/myImage.png");     } catch (Exception error) {       Alert alert = new Alert("Failure", "Can't open image file.", null, null);       alert.setTimeout(Alert.FOREVER);       immutableImageExample.getDisplay().setCurrent(alert);     }   }   protected void paint(Graphics graphics) {     if (image != null) {       graphics.drawImage(image, 0, 0, Graphics.VCENTER | Graphics.HCENTER);     }   }   public void commandAction(Command command, Displayable display) {     if (command == exit) {       immutableImageExample.exitMIDlet();     }   } }