Image loading exception : Image « J2ME « Java Tutorial






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 J2MEImmutableImageExample extends MIDlet {
  private Display display;

  private MyCanvas canvas;

  public J2MEImmutableImageExample() {
    display = Display.getDisplay(this);
    canvas = new MyCanvas(this);
  }

  protected void startApp() {
    display.setCurrent(canvas);
  }

  protected void pauseApp() {
  }

  protected void destroyApp(boolean unconditional) {
  }

  public void exitMIDlet() {
    destroyApp(true);
    notifyDestroyed();
  }

  class MyCanvas extends Canvas implements CommandListener {
    private Command exit;

    private J2MEImmutableImageExample immutableImageExample;

    private Image image = null;

    public MyCanvas(J2MEImmutableImageExample 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", "Cant open image file.", null, null);
        alert.setTimeout(Alert.FOREVER);
        display.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();
      }
    }
  }
}








31.35.Image
31.35.1.Draw image
31.35.2.Draw image to the bottom and right
31.35.3.Draw image to the center vertically and horizontally
31.35.4.Draw image with rectangle
31.35.5.Display big Image
31.35.6.Immutable image
31.35.7.Mutable ImageMutable Image
31.35.8.Image loading exception