/*--------------------------------------------------
* ImmutableImageFromFile.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 ImmutableImageFromFile extends MIDlet implements CommandListener
{
private Display display; // Reference to Display object
private Form fmMain; // The main form
private Command cmExit; // Command to exit the MIDlet
public ImmutableImageFromFile()
{
display = Display.getDisplay(this);
cmExit = new Command("Exit", Command.EXIT, 1);
fmMain = new Form("");
fmMain.addCommand(cmExit);
fmMain.setCommandListener(this);
try
{
// Read the appropriate image based on color support
Image im = Image.createImage((display.isColor()) ?
"/image_color.png":"/image_bw.png");
// Code Block A
fmMain.append("A1");
fmMain.append(new ImageItem(null, im, ImageItem.LAYOUT_NEWLINE_BEFORE |
ImageItem.LAYOUT_CENTER | ImageItem.LAYOUT_NEWLINE_AFTER, null));
fmMain.append("A2");
// Code Block B
// fmMain.append("B1");
// fmMain.append(new ImageItem(null, im,ImageItem.LAYOUT_NEWLINE_BEFORE |
// ImageItem.LAYOUT_LEFT |ImageItem.LAYOUT_NEWLINE_AFTER, null));
// fmMain.append("B2");
// Code Block C
// fmMain.append("C1");
// fmMain.append(new ImageItem(null, im,ImageItem.LAYOUT_NEWLINE_BEFORE |
// ImageItem.LAYOUT_RIGHT |ImageItem.LAYOUT_NEWLINE_AFTER, null));
// fmMain.append("C2");
// Code Block D
// fmMain.append("D1");
// fmMain.append(im);
// fmMain.append("D2");
// System.out.println("Layout Directives:" + ((ImageItem)fmMain.get(1)).getLayout());
display.setCurrent(fmMain);
}
catch (java.io.IOException e)
{
System.err.println("Unable to locate or read .png file");
}
}
public void startApp()
{
display.setCurrent(fmMain);
}
public void pauseApp()
{
}
public void destroyApp(boolean unconditional)
{
}
public void commandAction(Command c, Displayable s)
{
if (c == cmExit)
{
destroyApp(false);
notifyDestroyed();
}
}
}
|