Java/J2ME/CustomItem

Материал из Java эксперт
Перейти к: навигация, поиск

SimpleItem MIDlet

/*
Wireless Java 2nd edition 
Jonathan Knudsen
Publisher: Apress
ISBN: 1590590775 
*/
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class SimpleItemMIDlet extends MIDlet
    implements CommandListener {
    
  public void startApp() {
    Form form = new Form("SimpleItemMIDlet");
    form.append(new SimpleItem("SimpleItem"));
    Command c = new Command("Exit", Command.EXIT, 0);
    form.addCommand(c);
    form.setCommandListener(this);
    Display.getDisplay(this).setCurrent(form);
  }
  public void pauseApp() {}
  public void destroyApp(boolean unconditional) {}
  
  public void commandAction(Command c, Displayable s) {
    if (c.getCommandType() == Command.EXIT)
      notifyDestroyed();
  }
}
 class SimpleItem extends CustomItem {
 
  public SimpleItem(String title) { super(title); }
  
  // CustomItem abstract methods.
  
  public int getMinContentWidth() { return 100; }
  public int getMinContentHeight() { return 60; }
  
  public int getPrefContentWidth(int width) {
    return getMinContentWidth();
  }
  
  public int getPrefContentHeight(int height) {
    return getMinContentHeight();
  }
  
  public void paint(Graphics g, int w, int h) {
    g.drawRect(0, 0, w - 1, h - 1);
    g.setColor(0x000000ff);
    int offset = 0;
    for (int y = 4; y < h; y += 12) {
      offset = (offset + 12) % 24;
      for (int x = 4; x < w; x += 24) {
        g.fillTriangle(x + offset,     y,
                       x + offset - 3, y + 6,
                       x + offset + 3, y + 6);
      }
    }
  }
}