Dhafiq Sagara adalah orang bodoh yang tidak bisa apa-apa, tapi dia selalu berusaha untuk terus menjadi yang lebih baik. Rasa keingin-tahuannya sangat tinggi, selalu berusaha dan terus berusaha, trial dan error adalah prinsip belajarnya.

30 Nov 2010

J2ME - Membuat Background Papan Catur

Konsep pembuatan grafik pada user interface sesuai keinginan kita bisa disebut Low Level GUI yaitu konsep yang memberi kebebasan kepada programmer untuk membentuk suatu grafik interface seperti garis, gambar beranimasi, gambar bergerak yang mana programmer memiliki kendali penuh untuk mengatur pixel pada layar.

Langsung aja ya gan saya kasik source code membuat background papan catur pada J2ME.



 

Berikut source code papan catur:

===== PapanCatur.java =====
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;

public class PapanCatur extends MIDlet {
    private Display display;
    papancatur pantur;

    public void startApp() {
        if(display==null){
            pantur = new papancatur(this);
            display = Display.getDisplay(this);
        }
        display.setCurrent(pantur);
    }

    public void pauseApp() {
    }

    public void destroyApp(boolean unconditional) {
    }

    protected void Quit(){
        destroyApp(true);
        notifyDestroyed();
    }

    class papancatur extends Canvas implements CommandListener{
        private Command exitCommand = new Command("Exit", Command.EXIT, 7);
        private PapanCatur segiempat;

        public papancatur(PapanCatur segiempat){
            this.segiempat = segiempat;
            addCommand(exitCommand);
            setCommandListener(this);
        }

        protected void paint(Graphics g) {
            int width = getWidth();
            int height = getHeight()-61;
            g.setGrayScale(255);
            g.fillRect(0, 0, width-1, height-1);

            g.setColor(99, 154, 49);
            for (int i = 0; i < width; i+=30) {
                for (int j = 330; j >= 30; j-=60) {
                    g.fillRect(i+j, i, 30, 30);
                }
            }
            for (int i = 0; i < width; i+=30) {
                for (int j = 30; j <= 330; j+=60) {
                    g.fillRect(i, i+j, 30, 30);
                }
            }

            g.setColor(99, 154, 49);
            for (int k = 0; k <= width; k++) {
                g.fillRect(-k, height-1, width, height);
            }
            g.setColor(255, 255, 255);
            g.drawString("dhafiq-san.blogspot.com", getWidth() / 2, getHeight() - 10, Graphics.BOTTOM | Graphics.HCENTER);
        }

        public void commandAction(Command c, Displayable d) {
            if(c==exitCommand){
                segiempat.Quit();
            }
        }
    }
}

Berikut screenshotnya:

4 komentar:

  1. kalo buat kotak-kotaknya aja gimana gan ?

    BalasHapus
  2. gan, klo bikin papan tts apa kira2 bisa pake cara kek gini juga?

    BalasHapus