Rabu, 02 Januari 2013

Laporan Praktikum; Aplikasi Bergerak-Command & Command Listener



LAPORAN PRAKTIKUM
PEMROGRAMAN APLIKASI BERGERAK

MODUL II
Command & CommandListener


Description: FKOM Hitam Putih.jpg

Disusun oleh :
Nama               : Dadan Ramdani
NIM                 : 2009081051
Kelas               : TI 2009 C






LABORATORIUM KOMPUTER
FAKULTAS ILMU KOMPUTER
UNIVERSITAS KUNINGAN
2012
 MODUL II
Command & CommandListener

Menurut definisinya kelas Command adalah sebuah konstruksi yang membungkus semua hal-hal atau informasi yang berkaitan dengan sebuah aksi. Perilaku dari aksi itu sendiri tidak dibungkus didalam objek Command, melaikan harus didefinisikan secara eksplisit melalui method commandAction(), yaitu method yang harus didefinisikan pada saat kita mengimplementasikan interface CommandListener. Ini artinya objek Command hanya berisi informasi tentang perintah, bukanlah sebuah aksi aktual yang terjadi pada saat objek Command diaktivasi. Aksi-aksi yang telah didefinisikan pada interface CommandListener kemuadian akan diasosiasikan dengan layar aktif sehingga objek-objek Command yang terdapat pada layar tersebut dapat diaktivasi sesuai dengan kebutuhannya.

Latihan
1.             Jalankan J2ME wireless toolkit, yaitu dengan memilih menu start à programs à J2ME wireless toolkit à Ktoolbar.
2.             Setelah itu muncul jendela J2ME wireless toolkit.
3.             Buat sebuah project baru dengan memilih menu File | new project, sehingga akan muncul kotak dialog untuk melakukan input nama project dan nama kelas dari MIDlet yang akan dibuat. Isi dengan nama praktikum2_1 dan nama class MIDlet HelloMIDlet2
4.             Pilih tombol create project, dan lakukan setting dari project yang akan dibuat pada form yang ditampilkan
5.             Klik OK dan akan tampil pesan berikut
6.             Ketik sintak program berikut.

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class HelloMIDlet2 extends MIDlet implements CommandListener {
// deklarasi variable bertipe Display yang bersifat private
   private Display display;
// deklarasi variable bertipe Command
   private Command cmdKeluar;
// mendefinisikan Constructor
   public HelloMIDlet2() {
               display=Display.getDisplay(this);
   }
   public void startApp() {
// instansiasi objek textBox
               TextBox tb=new TextBox("Hello MIDlet","Hello salam kenal MIDlet....!", 256,0);
// instansiasi objek Command
               cmdKeluar=new Command("Keluar", Command.EXIT,1);
// menambahkan objek Command ke TextBox
               td.addCommand(cmdKeluar);
// menset CommandListener dari objek TextBox
               tb.setCommandListener(this);
               display.setCurrent(tb);
   }
   public void pauseApp() {
   }
   public void destroyApp(boolean unconditional) {
   }
   public void commandAction(Command c, Displayable s) {
               if(c== cmdKeluar) {
                           destroyApp(false);
                           notifyDestroyed();
               }
   }
}

7.             Simpan dengan nama HelloMIDlet2.java
8.             Compile file dengan memilih menu Project | build pada Ktoolbar
9.             Jalankan program dengan memilih menu Project | run

10.         Untuk menjalankan MIDlet klik launch















Latihan 2
1.             Jalankan J2ME wireless toolkit, yaitu dengan memilih menu start à programs à J2ME wireless toolkit à Ktoolbar.
2.             Setelah itu muncul jendela J2ME wireless toolkit.
3.             Buat sebuah project baru dengan memilih menu File | new project, sehingga akan muncul kotak dialog untuk melakukan input nama project dan nama kelas dari MIDlet yang akan dibuat. Isi dengan nama praktikum2_2 dan nama class MIDlet TestMIDlet

4.             Pilih tombol create project, dan lakukan setting dari project yang akan dibuat pada form yang ditampilkan
5.             Klik OK dan akan tampil pesan berikut
6.             Ketik sintak program berikut.



import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class TestMIDlet extends MIDlet {
            private Display display;
            private Command cmdKeluar;
            private Command cmdHello;
            private TextBox tb;
            private CommandListener listener;
//mendefinisikan construktor
            public TestMIDlet() {
                        display=Display.getDisplay(this);
            }
            public void startApp() {
                        tb=new TextBox("CommandListener", null, 256, 0);
                        cmdKeluar=new Command("Keluar", Command.EXIT, 1);
                        tb.addCommand(cmdKeluar);
                        cmdHello=new Command("Hello", Command.SCREEN, 1);
                        tb.addCommand(cmdHello);
// mengeset CommandListener dari objek TextBox
                        listener=(CommandLIstener) new ContohListener();
                        tb.setCommandListener(listener);
                        display.setCurrent(tb);
            }
            public void pauseApp() {
            }
            public void destroyApp(boolean unconditional) {
            }
// mendeklarasikan inner class
            class ContohListener implements CommandListener {
                        public void commandAction(Command c, Displayable s) {
                                    if(c==cmdKeluar) {
                                                destroyApp(false);
                                                notifyDestroyed();
                                    }
                                    else if(c==cmdHello) {
                                                tb.setString("Hello Salam Kenal MIDlet....!");
                                    }
                        }
            };
}

7.             Simpan dengan nama TestMIDlet.java
8.             Compile file dengan memilih menu Project | build pada Ktoolbar
9.             Jalankan program dengan memilih menu Project | run

10.         Untuk menjalankan MIDlet klik launch




TUGAS

1.             Buat sebuah project baru dengan memilih menu File | new project, sehingga akan muncul kotak dialog untuk melakukan input nama project dan nama kelas dari MIDlet yang akan dibuat. Isi dengan nama FirstCommand dan nama class MIDlet FirstCommand
2.             Pilih tombol create project, dan lakukan setting dari project yang akan dibuat pada form yang ditampilkan
3.             Klik OK dan akan tampil pesan berikut
4.             Ketik sintak program berikut.

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class FirstCommand extends MIDlet {
            Display display;
            private MainCanvas mainCanvas;
            public FisrtCommand() {
                        display=Display.getDisplay(this);
            }
            public void startApp() {
                        mainCanvas=new MainCanvas(this, display);
                        display.setCurrent(mainCanvas);
            }
            public void pauseApp() {
            }
            public void destroyApp(boolean unconditional) {
            }
            public void exitMIDlet() {
                        destroyApp(false);
                        notifyDestroyed();
            }
}


5.             Simpan dengan nama FirstCommand.java
6.             Compile file dengan memilih menu Project | build pada Ktoolbar
7.             Jalankan program dengan memilih menu Project | run

8.             Untuk menjalankan MIDlet klik launch

















1.             Buat sebuah project baru dengan memilih menu File | new project, sehingga akan muncul kotak dialog untuk melakukan input nama project dan nama kelas dari MIDlet yang akan dibuat. Isi dengan nama MainCanvas dan nama class MIDlet FirstCommand

2.             Pilih tombol create project, dan lakukan setting dari project yang akan dibuat pada form yang ditampilkan
3.             Klik OK dan akan tampil pesan berikut
4.             Ketik sintak program berikut.

                        import javax.microedition.lcdui.*;

class MainCanvas extends Canvas implements CommandListener {
            private Display display;
            private FirstCommand midlet;
            private String string="Command OK";
            private Command cmOk, cmBack, cmCancel, cmStop, cmExit, cmHelp, cmScreen, cmItem;
            public MainCanvas(FisrtCommand midlet, Display display) {
                        this.midlet=midlet;
                        this.display=display;
                        cmOk=new Command("OK",Command.OK,1);
                        addCommand(cmOk);
                        cmBack=new Command("BACK",Command.BACK,1);
                        cmCancel=new Command("CANCEL",Command.CANCEL,1);
                        cmStop=new Command("STOP",Command.STOP,1);
                        cmHelp=new Command("HELP",Command.HELP,1);
                        cmScreen=new Command("SCREEN",Command.SCREEN,1);
                        cmItem=new Command("ITEM",Command.ITEM,1);
                        cmExit=new Command("EXIT",Command.EXIT,1);
                        setCommandListener(this);
            }
            protected void paint(Graphics g) {
                        g.setColor(255,255,255);
                        g.fillRect(0,0,getWidth(),getHeight());
                        g.setColor(0,0,0);
                        g.setFont(Font.setFont(Font.FACE_PROPORTIONAL,font.STYLE_PLAIN,Font.SIZE_LARGE));
                        g.drawString(string,10,(getHeight()/2), Graphics.TOPGraphics.LEFT);
            }
            public void commandAction(Command c, Displayable s) {
                        if(c==cmExit) {
                                    midlet.exitMIDlet();
                        }
                        else {
                        if (c==cmOk) {
                                    string="Command BACK";
                                    removeCommand(cmOk);
                                    addCommand(cmBack);
                        }         
                        else if(c==cmBack) {
                                    string="Command CANCEL";
                                    removeCommand(cmBack);
                                    addCommand(cmCancel);
                        }
                        else if(c==cmCancel) {
                                    string="Command STOP";
                                    removeCommand(cmCancel);
                                    addCommand(cmStop);
                        }
                        else if(c==cmStop) {
                                    string="Command HELP";
                                    removeCommand(cmStop);
                                    addCommand(cmHelp);
                        }
                        else if(c==cmHelp) {
                                    string="Command SCREEN";
                                    removeCommand(cmHelp);
                                    addCommand(cmScreen);
                        }
                        else if(c==cmScreen) {
                                    string="Command ITEM";
                                    removeCommand(cmScreen);
                                    addCommand(cmItem);        
                        }
                        else if(c==cmItem);
                        string="Command EXIT";
                        removeCommand(cmItem);
                        addCommand(cmExit);
                        }
                        repaint();
                       
            }
}
};


5.             Simpan dengan nama MainCanvas.java
6.             Compile file dengan memilih menu Project | build pada Ktoolbar
7.             Jalankan program dengan memilih menu Project | run

8.             Untuk menjalankan MIDlet klik launch

KESIMPULAN

Command adalah sebuah obyek yang digunakan untuk merespon user pada sebuah aplikasi. Sering diasosiasikan sebagai softkey, tombol ataupun area pada touchscreen. Sangat berperan penting dalam event handling pada J2ME. Pada penggunaanya, Command didefinisikan dengan mengimplementasikan CommandListener. Command(String label, int commandType, int priority).
Command memiliki 3 atribut, yaitu :
§  label : menampilkan nama pada tombol Command
§  type : menentukan fungsi dari Command. Jenis type Command antara lain BACK,EXIT, OK, HELP, CANCEL, SCREEN, ITEM, dan STOP.
§  priority : menentukan urutan prioritas dalam menampilkan Command pada layar
Command adalah objek yang memungkinkan pemakai melakukan aksi.
Objek Fungsi Command sama dengan tombol (button) pada aplikasi dekstop / web.
  • Command membutuhkan antarmuka (interface) CommandListener untuk menangkap even dari Command .
  • Saat membuat sebuah aplikasi J2ME jangan lupa membuat sebuah Command untuk keluar dari aplikasi, karena jika ponsel tidak mendukung keluar aplikasi dengan sendirinya maka ponsel harus dimatikan untuk keluar dari aplikasi J2ME.
  • Objek Command didefinisikan pada library J2ME dengan kelas:
            javax.microedition.lcdui.Command

Tidak ada komentar:

Posting Komentar