import javax.microedition.midlet.*;
import
javax.microedition.lcdui.*; 
import
java.io.IOException;
public class
HitungNilaiRata2 extends MIDlet implements CommandListener {
    private Display display;
    private List list;
    private Form form;
    private Canvas canvas; 
    private TextField Ket;
  private final Command cmdKeluar = new
Command("exit", Command.EXIT, 1);
  private final Command cmdOK =new
Command("Lanjut", Command.OK, 1);
  private final Command cmdKembali =
  new Command("Kembali",
Command.BACK, 1);
 TextField ketrngan = new
TextField("Keterangan :", "",12,TextField.ANY);
    public HitungNilaiRata2() {
display =
Display.getDisplay(this);
list = new
List("Gabungan Geometri Low dan Hight", Choice.EXCLUSIVE);
list.append("Kotak",
null);
list.append("Lingkaran",
null);
list.append("Segitiga",
null);
list.append("Garis",
null);
list.append("Persegi
Panjang", null);
list.append("image",
null);
list.addCommand(cmdKeluar);
list.addCommand(cmdOK);
list.setCommandListener(this);
    }  
    public void startApp() {
        form = new Form("Menghitung Nilai
Rata-Rata");
        Ket = new TextField("Ket
:",null,25,TextField.ANY);         
        form.append(Ket);
        form.addCommand(cmdKeluar);
        form.setCommandListener(null);
        display.setCurrent(form);
        display.setCurrent(list);
    }
    public void pauseApp() {
    }
    public void destroyApp(boolean
unconditional) {
    }
   public void commandAction(Command c, Displayable
s) {
    if (c == cmdKeluar) {
      destroyApp(false);
      notifyDestroyed();
    } else if (c == cmdKembali) {
      display.setCurrent(list);
    } else {
      switch (list.getSelectedIndex()) {
        case 0: {
          canvas = (Segiempat) (new
Segiempat(this));
          break;   
        }
        case 1: {
          canvas = (Lingkaran) (new
Lingkaran(this));
          break;     
        }
        case 2: {
          canvas = (Segitiga) (new
Segitiga(this));
          break;     
        }
        case 3: {
          canvas = (Garis) (new Garis(this));
          break;     
        }
        case 4: {
          canvas = (Segi) (new Segi(this));
          break;        
        }
            case 5: {
            canvas = (img) (new img(this));
            break;
        }
      }
      canvas.addCommand(cmdKembali);
      canvas.setCommandListener(this);
      display.setCurrent(canvas);
    }
  }         
  class Segiempat extends Canvas {     
    private HitungNilaiRata2 midlet;
    public Segiempat(HitungNilaiRata2 midlet)
{        
      this.midlet = midlet;         
    }
    public void paint(Graphics g) {
      g.setColor(255, 255, 255);
      g.fillRect(0, 0, getWidth(),
getHeight());
      g.setColor(0, 0, 0);
      g.drawRect(55, 55, 60, 60);
      g.setColor(255, 0, 0);
      g.fillRect(56, 56, 59, 59);
      g.drawLine(55, 55, 60, 60);
    }
  };
  class Lingkaran extends Canvas {
    private HitungNilaiRata2 midlet;
    public Lingkaran(HitungNilaiRata2 midlet)
{        
      this.midlet = midlet;         
    }
    public void paint(Graphics g) {
      g.setColor(255, 255, 255);
      g.fillRect(0, 0, getWidth(),
getHeight());
      g.setColor(255, 0, 0);     
      g.fillArc(55, 55, 60, 60, 0, 360);
    } 
  }; 
  class Segitiga extends Canvas {
    private HitungNilaiRata2 midlet;
    public Segitiga(HitungNilaiRata2 midlet)
{        
      this.midlet = midlet;         
    }
    public void paint(Graphics g) {
      g.setColor(255, 255, 255);
      g.fillRect(0, 0, getWidth(),
getHeight());
      g.setColor(255, 0, 0);
      g.fillTriangle(5, 10, 30, 10, 5, 125);
    } 
  };
  class Garis extends Canvas {     
    private HitungNilaiRata2 midlet;
    public Garis(HitungNilaiRata2 midlet)
{        
      this.midlet = midlet;         
    }
    public void paint(Graphics g) {
      g.setColor(255, 255, 255);
      g.fillRect(0, 0, getWidth(),
getHeight());
      g.setColor(0, 0, 0);
      g.drawLine(50, 55, 60, 180);
    }
  };
  class Segi extends Canvas {     
    private HitungNilaiRata2 midlet;
    public Segi(HitungNilaiRata2 midlet) {        
      this.midlet = midlet;         
    }
    public void paint(Graphics g) {
      g.setColor(255, 255, 255);
      g.fillRect(0, 0, getWidth(),
getHeight());
      g.setColor(255, 0, 0);
      g.drawRoundRect(108,50,88,44,18,18);
      g.fillRoundRect(108,120,88,44,18,18);
      //g.drawString("bunga", UP, UP,
UP);
    }
  };
  class img extends Canvas {     
    private HitungNilaiRata2 midlet;
    public img(HitungNilaiRata2 midlet) {        
      this.midlet = midlet;         
    }
    public void paint(Graphics g) {
        Image img = null;
      try{
        img=Image.createImage("/husna.jpg");
        }
        catch(Exception exc){
        }
      g.drawImage(img,
getWidth()/2,getHeight()/2, Graphics.VCENTER | Graphics.HCENTER);
   };
  }
 
}Selamat Mencoba :)



 

