Monday, April 4, 2011

Membuat Command, Form & Teks Field di J2ME

J2ME (Java 2 Micro Edition) merupakan subset dari J2SE yang ditujukan untuk implementasi pada peralatan embeded system dan handheld yang tidak mampu mendukung secara penuh implementasi menggunakan J2SE. J2ME adalah teknologi Java yang diperuntukkan perngkat-perngakat kecil consumer device , terutama wireless. Bebrapa perangkat wireless antara lain PC, PDA, communicator, embedded device, smart card dan ponsel. Teknologi Java mungkin merupakan satu-satunya cara memprogram beberapa perangkat, berbagi logic antara perangkat dan server, pengantaran aplikasi secara dinamis, program yang kompak, lingkungan pengembangan yang aman dan cepat. J2ME memungkinkan perangkat lunak dapat di-download perangkat sekaligus memungkinkan layanan yang dapat disesuaikan di beragam perangkat.

1. Command
Suatu Button dalam Form di J2ME. Nanti penempatan akan bertambah secara otomatis jika menunya semakin banyak.

package Command;

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class CommandMidlet01 extends MIDlet implements CommandListener {
private Command cmdKeluar;
private Command cmdAlert;
private Display display;
private Form form;
private Alert alert;

public CommandMidlet01() {
form = new Form("Aplikasi 01");
cmdKeluar = new Command("Keluar", Command.EXIT, 1);
cmdAlert = new Command("Alert", Command.SCREEN, 2);
form.addCommand(cmdAlert);
form.addCommand(cmdKeluar);
form.setCommandListener(this);
}

public void startApp() {
display = Display.getDisplay(this);
display.setCurrent(form);
}

public void pauseApp() {
}

public void destroyApp(boolean unconditional) {
}

public void commandAction(Command c, Displayable d) {
if (d == form) {
if (c == cmdKeluar) {
destroyApp(false);
notifyDestroyed();
}

else {
alert = new Alert("Alert..!!!");
alert.setString("Tombol Alert ditekan...");
display.setCurrent(alert);
}
}
}
Setelah itu coba run project yang anda buat.

2. Form
Merupakan halaman untuk menginput data. Bisa terdiri dari komponen-komponen yang disebut item. Pengaksesan item-item dapat dilakukan dengan menggunakan index. Pada class FormSISKOMMidlet01 dapat dibuat dengan dua method yaitu getString() dan setString(String str). Berikut adalah contoh untuk aplikasi yang memberikan fasilitas bagi user untuk mengubah teks yang ditampilkan. Berikut adalah contoh dari aplikasi tersebut.

package Command;

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class FormSISKOMMidlet01 extends MIDlet implements CommandListener{
private Form form;
private TextField textField;
private Display display;
private Command cmdKeluar;
private Command cmdAksi;
private Alert alert;
public String strNama;

public FormSISKOMMidlet01() {
form = new Form("Form SISKOM");
textField = new TextField("Nama :", "", 10, 0);
cmdKeluar = new Command("Keluar", Command.EXIT, 1);
cmdAksi = new Command("Aksi", Command.SCREEN, 2);
form.addCommand(cmdKeluar);
form.addCommand(cmdAksi);
form.append(textField);
form.setCommandListener(this);
}

public void startApp() {
display = Display.getDisplay(this);
display.setCurrent(form);
}

public void pauseApp() {
}

public void destroyApp(boolean unconditional) {
}

public void commandAction(Command c, Displayable d) {
if (d == form) {
if (c == cmdKeluar) {
destroyApp(false);
notifyDestroyed();
}
else if (c == cmdAksi) {
strNama = textField.getString();
alert = new Alert("Pesan");
alert.setString("Hallo "+strNama);
display.setCurrent(alert);
}
}
}
}

3. Teks Field
Adalah Sebuah Object untuk menginputkan text. Menggunakan sub kelas dari Item. Mempunyai batasan :
  • TextField.ANY (Mengijinkan semua inputan karakter)
  • TextField.EMAILADDR (hanya mengijinkan alamat inputan email)
  • TextField.NUMERIC (hanya mengijinkan inputan numeric)
  • TextField.PHONENUMBER (hanya mengijinkan nomor telepon)
  • TextField.URL (hanya mengijinkan alamat URL)
package Command;

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class TipeTextfieldMidlet01 extends MIDlet implements CommandListener {
private Form form;
private Command cmdKeluar;
private Display display;
private TextField nilaiANY;
private TextField nilaiEMAIL;
private TextField nilaiNUMERIC;
private TextField nilaiPHONE;
private TextField nilaiURL;
private TextField nilaiPASSWD;
private String nilaiTipe;

public TipeTextfieldMidlet01() {
cmdKeluar = new Command("Keluar", Command.EXIT, 1);
nilaiANY = new TextField("ANY", "", 50, TextField.ANY);
nilaiTipe = String.valueOf(TextField.ANY);
nilaiANY.setString(nilaiTipe);
nilaiEMAIL = new TextField("EMAIL", "", 50, TextField.ANY);
nilaiTipe = String.valueOf(TextField.EMAILADDR);
nilaiEMAIL.setString(nilaiTipe);
nilaiNUMERIC = new TextField("NUMERIC", "", 50, TextField.ANY);
nilaiTipe = String.valueOf(TextField.NUMERIC);
nilaiNUMERIC.setString(nilaiTipe);

nilaiPHONE = new TextField("PHONE", "", 50, TextField.ANY);

nilaiTipe = String.valueOf(TextField.PHONENUMBER);

nilaiPHONE.setString(nilaiTipe);

nilaiURL = new TextField("URL", "", 50, TextField.ANY);

nilaiTipe = String.valueOf(TextField.URL);

nilaiURL.setString(nilaiTipe);

nilaiPASSWD = new TextField("PASSWORD", "", 50, TextField.ANY);

nilaiTipe = String.valueOf(TextField.PASSWORD);

nilaiPASSWD.setString(nilaiTipe);

form = new Form("Tipe TextField");

form.append(nilaiANY);

form.append(nilaiEMAIL);

form.append(nilaiNUMERIC);

form.append(nilaiPHONE);

form.append(nilaiURL);

form.append(nilaiPASSWD);

form.addCommand(cmdKeluar);

form.setCommandListener(this);

}

public void startApp() {

display = Display.getDisplay(this);

display.setCurrent(form);

}

public void pauseApp() {

}

public void destroyApp(boolean unconditional) {

}

public void commandAction(Command c, Displayable d) {

if (c == cmdKeluar) {

destroyApp(false);

notifyDestroyed();

}

}

}

Continue Reading
No comments
Share: