In this application we are going to simply create an image using canvas class. In this class we are creating the image and a thread to run the image. The source code of image creation and thread creation is here:
this.image = Image.createImage("/mobile.png");
new Thread(this).start();
When the thread will start, it will execute the run() method, the run method executed internally using its run able interface implementing in the class. When the run() method is invoke, which repaint the canvas.
The Application is as follows:

SlideImage.java
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
public class SlideImage extends MIDlet{
private Display display;
private SimpleSlidingCanvas canvas;
public void startApp(){
canvas = new SimpleSlidingCanvas();
display = Display.getDisplay(this);
display.setCurrent(canvas);
}
public void pauseApp(){}
public void destroyApp(boolean unconditional){
notifyDestroyed();
}
}
class SimpleSlidingCanvas extends Canvas implements Runnable{
Image image = null;
public SimpleSlidingCanvas(){
try{
this.image = Image.createImage("/mobile.png");
new Thread(this).start();
}catch(Exception e){
e.printStackTrace();
}
}
public void run(){
while(true){
repaint();
try{
synchronized(this){
wait(50L);
}
}catch(Exception e){
e.printStackTrace();
}
}
}
protected void paint(Graphics g){
g.setColor(0xffffff);
g.fillRect(0, 0, getWidth(), getHeight());
if(image != null){
g.drawImage(image, getWidth() / 2, getHeight() / 2, Graphics.HCENTER
| Graphics.VCENTER);
} else {
g.setColor(0x000000);
g.drawString("No image available", getWidth() / 2, getHeight() / 2, Graphics.HCENTER | Graphics.BASELINE);
}
}
}
If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.
Ask your questions, our development team will try to give answers to your questions.
Ask Questions? Discuss: J2ME Image Example View All Comments
Post your Comment