Suatu aplikasi yang menggunakan object Command terkadang memerlukan penambahan tombol dan pengurangan tombol pada saat run-time. Jadi sebuah object Command dapat di tambahkan maupun di kurangkan.
Mendeklarasikan Obyek Command
Bentuk umum membuat object Command adalah:
Command(label, commandType, priority)
Contoh:
cmdExit = new Command(“Exit”, Command.EXIT, 0);
Berikut macam-macam tipe Command yang dapat dipakai:
Berikut daftar tipe Command yang dapat digunakan:
|
Tipe
|
Nilai
|
Keterangan
|
| SCREEN |
1
|
Tipe Command yang diaplikasikan untuk layer (screen) tertentu. |
| BACK |
2
|
Tipe Command yang digunakan untuk kembali ke layar sebelumnya. |
| CANCEL |
3
|
Tipe Comamnd yang digunakan untuk jawaban negatif pada dialog box. |
| OK |
4
|
Tipe Command untuk jawaban positif pada dialoag box. |
| HELP |
5
|
Tipe Command yang digunakan untuk menampilkan help. |
| STOP |
6
|
Tipe Command yang akan menghentikan proses-proses yang sedang berjalan. |
| EXIT |
7
|
Tipe Command yang digunakan untuk keluar dari aplikasi. |
| ITEM |
8
|
Tipe Command yang digunakan untuk menghubungkan aksi dalam suatu Command dengan item di dalam layar. |
Menambah Obyek Command
Ada tulisan sebelumnya sudah banyak yang membahas tentang penambahan objek command pada objek lain seperti objek dari class List atau Form. Berikut contoh pengunaan obyek Command.
Untuk menambahkan obyek command menggunakan method addComamnd().
Contoh:
frm.addCommand(cmdExit);
Menghapus Obyek Command
Obyek Command yang telah kita tambahkan di dalam obyek frm dapat dihapus dengan menggunakan method removeCommand().
Contoh:
frm.removeCommand(cmdOpen);
Contoh Program
Read more…
Agar sebuah tombol dapat berfungsi, maka event yang terjadi pada tombol harus di tangkap.
Program diatas ketika di klik tombol Exit belum dapat keluar dari program.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
| import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class EventCommand extends MIDlet implements CommandListener{
private Display display;
private TextBox mainScreen;
private Command cmdExit;
public EventCommand(){
display = Display.getDisplay(this);
mainScreen = new TextBox("Hello", "Hello World", 512, 1);
cmdExit = new Command("Exit", Command.EXIT, 1);
mainScreen.addCommand(cmdExit);
mainScreen.setCommandListener(this);
}
public void startApp() {
display.setCurrent(mainScreen);
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public void commandAction(Command c, Displayable d) {
if (c==cmdExit){
destroyApp(false);
notifyDestroyed();
}
}
} |
Hal-hal yang harus disertakan dalam menangkap sebuah event adalah:
- … implement Command Listener
- … setComamndListener
- … commandAction
Catatan:
Ketika menambahkan implement CommandListener maka akan terdapat pesan kesalahan. Kesalahan tersebut terjadi karena jika menggunakan interface Command Listener harus disertai dengan method commandAction.
Aksi yang akan terjadi pada event di atur pada method commandAction. Pada aplikasi ini ketika ditekan tombol “Exit”, maka akan keluar dari program.
public void commandAction(Command c, Displayable d) {
if (c==cmdExit){
destroyApp(false);
notifyDestroyed();
}
}
Hasil running program di atas adalah:

Sebelum diklik "Exit"

Setelah diklik "Exit"
Tombol pada sebuah aplikasi sangat penting. Tombol biasanya digunakan untuk mengendalikan jalannya program. Pada program ini kita akan menambahkan tombol pada aplikasi J2ME.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
| import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class AddCommand extends MIDlet{
private Display display;
private TextBox mainScreen;
private Command cmdExit;
public AddCommand(){
display = Display.getDisplay(this);
mainScreen = new TextBox("Hello", "Hello World", 512, 1);
cmdExit = new Command("Exit", Command.EXIT, 1);
mainScreen.addCommand(cmdExit);
}
public void startApp() {
display.setCurrent(mainScreen);
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
} |
Mendefinisikan tombol pada J2ME menggunakan class Command. Berikut mendefinisikan tombol bernama cmdExit:
public class AddCommand extends MIDlet {
...
private Command cmdExit;
Membuat bentuk instant cmdExit dan menambahkannya kedalam Class mainScreen. Class main screen harus turunan dari class Displayable.
public AddCommand(){
...
cmdExit = new Command("Exit", Command.EXIT, 1);
mainScreen.addCommand(cmdExit);
}
Tampilan program di atas adalah sebagai berikut

Tombol Exit Muncul pada Bagian Kiri