Draw image with rectangle : Image « J2ME « Java Tutorial






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 DrawImageMIDlet extends MIDlet implements CommandListener {

  private Command exitCommand;

  Display display;

  Image image = null;

  public void startApp() {
    Display display = Display.getDisplay(this);

    try {
      image = Image.createImage("/0.png");
    } catch (Exception e) {
    }

    Displayable d = new DrawImageCanvas(image);
    exitCommand = new Command("Exit", Command.EXIT, 1);

    d.addCommand(exitCommand);
    d.setCommandListener(this);

    display.setCurrent(d);
  }

  public void pauseApp() {
  }

  public void destroyApp(boolean unconditional) {
  }

  public void commandAction(Command c, Displayable s) {
    notifyDestroyed();
  }
}

class DrawImageCanvas extends Canvas {

  int width = 0;

  int height = 0;

  Image image = null;

  DrawImageCanvas(Image image) {
    this.image = image;
  }

  public void paint(Graphics g) {
    width = getWidth();
    height = getHeight();

    g.setGrayScale(255);
    g.fillRect(0, 0, width - 1, height - 1);
    g.setGrayScale(0);
    g.drawRect(0, 0, width - 1, height - 1);

    g.drawImage(image, width / 2, height / 2, g.HCENTER | g.VCENTER);

  }
}








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