Dalam Praktikum 2 ini dibuatlah 1 kelas Midlet dan 3 java class. Dibuatlah beberapa java class dengan tujuan agar pengimplementasian form, String item, dan TextBox tidak dijadikan dalam 1 kelas Midlet. Dibawah ini penjelasan tentang kelas Midlet dan 3 java class :
Kelas Form Input (Form yang digunakan untuk mengisi data )
Kelas Show 1 yang digunakan untuk menampilkan hasil pengisian form input
Kelas Show 2 yang digunakan untuk mendefiniskan TextBox
Kelas Utama Midlet yang digunakan untuk pemangilan form input,show1 dan show 2
Tampilan jika program dijalankan :
Kelas Form Input (Form yang digunakan untuk mengisi data )
import javax.microedition.lcdui.*;
public class FormInput extends Form {
//Menginisialisai variabel TextField Nama dan Email
private TextField tfNama, tfEmail;
public FormInput() {
super("Input Data");//Pemberian Nama Form
//Membuat kotak teks nama dan email
tfNama = new TextField("Nama Anda", null, 15, TextField.ANY);
tfEmail = new TextField("Email", null, 15, TextField.EMAILADDR);
//Menambahkan kotak teks nama dan email ke dalam form input
append(tfNama);
append(tfEmail);
}
//Membuat method untuk mendapatkan isi kotak teks Nama
public String getNama() {
return tfNama.getString();
}
//Membuat method untuk mendapatkan isi kotak teks Email
public String getEmail() {
return tfEmail.getString();
}
}
public class FormInput extends Form {
//Menginisialisai variabel TextField Nama dan Email
private TextField tfNama, tfEmail;
public FormInput() {
super("Input Data");//Pemberian Nama Form
//Membuat kotak teks nama dan email
tfNama = new TextField("Nama Anda", null, 15, TextField.ANY);
tfEmail = new TextField("Email", null, 15, TextField.EMAILADDR);
//Menambahkan kotak teks nama dan email ke dalam form input
append(tfNama);
append(tfEmail);
}
//Membuat method untuk mendapatkan isi kotak teks Nama
public String getNama() {
return tfNama.getString();
}
//Membuat method untuk mendapatkan isi kotak teks Email
public String getEmail() {
return tfEmail.getString();
}
}
Kelas Show 1 yang digunakan untuk menampilkan hasil pengisian form input
import javax.microedition.lcdui.*;
public class FormShow1 extends Form {
//Menginisialisasikan variabel String Item(Menampilkan tulisan ke layar) nama dan email
private StringItem stNama, stEmail;
public FormShow1() {
super("Tampil 1");//Pemberian Nama Form
//Membuat String Item nama dan email
stNama = new StringItem("Nama:", null);
stEmail = new StringItem("Email", null);
//Menambahkan String Item ke dalam form show 2
append(stNama);
append(stEmail);
}
//Membuat Method untuk mengatur nama
public void setNama(String nama) {
stNama.setText(nama);
}
//Membuat Method untuk mengatur email
public void setEmail(String email) {
stEmail.setText(email);
}
}
public class FormShow1 extends Form {
//Menginisialisasikan variabel String Item(Menampilkan tulisan ke layar) nama dan email
private StringItem stNama, stEmail;
public FormShow1() {
super("Tampil 1");//Pemberian Nama Form
//Membuat String Item nama dan email
stNama = new StringItem("Nama:", null);
stEmail = new StringItem("Email", null);
//Menambahkan String Item ke dalam form show 2
append(stNama);
append(stEmail);
}
//Membuat Method untuk mengatur nama
public void setNama(String nama) {
stNama.setText(nama);
}
//Membuat Method untuk mengatur email
public void setEmail(String email) {
stEmail.setText(email);
}
}
Kelas Show 2 yang digunakan untuk mendefiniskan TextBox
import javax.microedition.lcdui.*;
public class FormShow2 extends TextBox {
public FormShow2() {
super("Tampil 2", null, 30, 0);//Membuat TextBox dengan judul Tampil 2, yang tidak ada isi, dan maksimal karakter yang dapat ditampung 30
}
//Membuat method untuk mengatur isi TextBox
public void setTextBox(String isi) {
this.setString(isi);
}
}
public class FormShow2 extends TextBox {
public FormShow2() {
super("Tampil 2", null, 30, 0);//Membuat TextBox dengan judul Tampil 2, yang tidak ada isi, dan maksimal karakter yang dapat ditampung 30
}
//Membuat method untuk mengatur isi TextBox
public void setTextBox(String isi) {
this.setString(isi);
}
}
Kelas Utama Midlet yang digunakan untuk pemangilan form input,show1 dan show 2
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
public class Prak2Midlet extends MIDlet implements CommandListener {
//Menginisialisasi variabel form - form
private FormInput frmInput;
private FormShow1 frmShow1;
private FormShow2 frmShow2;
//Menginisialisasi perintah tombol -tombol
private Command cmShow1, cmShow2, cmBack, cmExit;
public void startApp() {
if (frmInput == null) //Agar tidak mengalami error pada saat aplikasi di pause (di hentikan sementara)
frmInput = new FormInput(); //Membuat form input
if (frmShow1 == null)//Agar tidak mengalami error pada saat aplikasi di pause (di hentikan sementara)
frmShow1 = new FormShow1();//Membuat form show 1
if (frmShow2 == null)//Agar tidak mengalami error pada saat aplikasi di pause (di hentikan sementara)
frmShow2 = new FormShow2();//Membuat form show 2
//Membuat dan memberi jenis perintah tombol - tombol yang akan ditambahkan di form
cmShow1 = new Command("Show 1", Command.OK, 0 );
cmShow2 = new Command("Show 2", Command.OK, 1 );
cmBack = new Command("Kembali", Command.BACK, 0 );
cmExit = new Command("Keluar", Command.EXIT, 0 );
//Menambahkan tombol perintah untuk menampilkan form hasil, textbox, dan keluar pada form input
frmInput.addCommand(cmShow1);
frmInput.addCommand(cmShow2);
frmInput.addCommand(cmExit);
//Menambahkan tombol perintah untuk kembali di form show 1 dan show 2
frmShow1.addCommand(cmBack);
frmShow2.addCommand(cmBack);
//Menambahkan fungsi - fungsi perintah untuk tombol yang telah ditambahkan di form
frmInput.setCommandListener(this);
frmShow1.setCommandListener(this);
frmShow2.setCommandListener(this);
Display.getDisplay(this).setCurrent(frmInput);
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public void commandAction(Command c, Displayable d) {
//
if (d == frmInput) {
//Memberikan perintah ke tombol exit untuk keluar dari aplikasi
if (c == cmExit) {
destroyApp(true);
notifyDestroyed();
}
//Memberikan perintah pada tombol Show 1 untuk menampilkan form hasil nama dan email yang telah diisikan pada form input
if (c == cmShow1) {
frmShow1.setNama(frmInput.getNama());
frmShow1.setEmail(frmInput.getEmail());
Display.getDisplay(this).setCurrent(frmShow1);
}
//Memberikan perintah pada tombol Show 2 untuk menampilkan TextBox yang berisi form hasil
if (c == cmShow2) {
frmShow2.setTextBox(frmInput.getNama() + " " + frmInput.getEmail());
Display.getDisplay(this).setCurrent(frmShow2);
}
}
//Memberi perintah pada tombol back untuk kembali pada form input yang tombolnya ditampilkan di form show 1
if (d == frmShow1) {
if ( c == cmBack) {
Display.getDisplay(this).setCurrent(frmInput);
}
}
//Memberi perintah pada tombol back untuk kembali pada form input yang tombolnya ditampilkan di form show 2
if (d == frmShow2) {
if ( c == cmBack) {
Display.getDisplay(this).setCurrent(frmInput);
}
}}}
import javax.microedition.midlet.*;
public class Prak2Midlet extends MIDlet implements CommandListener {
//Menginisialisasi variabel form - form
private FormInput frmInput;
private FormShow1 frmShow1;
private FormShow2 frmShow2;
//Menginisialisasi perintah tombol -tombol
private Command cmShow1, cmShow2, cmBack, cmExit;
public void startApp() {
if (frmInput == null) //Agar tidak mengalami error pada saat aplikasi di pause (di hentikan sementara)
frmInput = new FormInput(); //Membuat form input
if (frmShow1 == null)//Agar tidak mengalami error pada saat aplikasi di pause (di hentikan sementara)
frmShow1 = new FormShow1();//Membuat form show 1
if (frmShow2 == null)//Agar tidak mengalami error pada saat aplikasi di pause (di hentikan sementara)
frmShow2 = new FormShow2();//Membuat form show 2
//Membuat dan memberi jenis perintah tombol - tombol yang akan ditambahkan di form
cmShow1 = new Command("Show 1", Command.OK, 0 );
cmShow2 = new Command("Show 2", Command.OK, 1 );
cmBack = new Command("Kembali", Command.BACK, 0 );
cmExit = new Command("Keluar", Command.EXIT, 0 );
//Menambahkan tombol perintah untuk menampilkan form hasil, textbox, dan keluar pada form input
frmInput.addCommand(cmShow1);
frmInput.addCommand(cmShow2);
frmInput.addCommand(cmExit);
//Menambahkan tombol perintah untuk kembali di form show 1 dan show 2
frmShow1.addCommand(cmBack);
frmShow2.addCommand(cmBack);
//Menambahkan fungsi - fungsi perintah untuk tombol yang telah ditambahkan di form
frmInput.setCommandListener(this);
frmShow1.setCommandListener(this);
frmShow2.setCommandListener(this);
Display.getDisplay(this).setCurrent(frmInput);
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public void commandAction(Command c, Displayable d) {
//
if (d == frmInput) {
//Memberikan perintah ke tombol exit untuk keluar dari aplikasi
if (c == cmExit) {
destroyApp(true);
notifyDestroyed();
}
//Memberikan perintah pada tombol Show 1 untuk menampilkan form hasil nama dan email yang telah diisikan pada form input
if (c == cmShow1) {
frmShow1.setNama(frmInput.getNama());
frmShow1.setEmail(frmInput.getEmail());
Display.getDisplay(this).setCurrent(frmShow1);
}
//Memberikan perintah pada tombol Show 2 untuk menampilkan TextBox yang berisi form hasil
if (c == cmShow2) {
frmShow2.setTextBox(frmInput.getNama() + " " + frmInput.getEmail());
Display.getDisplay(this).setCurrent(frmShow2);
}
}
//Memberi perintah pada tombol back untuk kembali pada form input yang tombolnya ditampilkan di form show 1
if (d == frmShow1) {
if ( c == cmBack) {
Display.getDisplay(this).setCurrent(frmInput);
}
}
//Memberi perintah pada tombol back untuk kembali pada form input yang tombolnya ditampilkan di form show 2
if (d == frmShow2) {
if ( c == cmBack) {
Display.getDisplay(this).setCurrent(frmInput);
}
}}}
Tampilan jika program dijalankan :
Tampilan di bawah ini menunjukkan tombol - tombol yang terdapat pada Form Input Data :
Tampilan di bawah ini menampilkan Form Input Data :
Tampilan di bawah ini menampilkan Form Show 1 :
Tampilan di bawah ini menampilkan TextBox yang berisi teks dari Form Show 2:
Download source code java praktikum 2 di sini