Pemrograman aplikasi bergerak (PAB) tidak banyak berbeda dengan pemrograman bkonvensional pada PC. Pada pengimplementasiannya perlu diperhatikan aspek karakteristik dari perangkat bergerak itu sendiri yang sering kali mempengaruhi arsitektur dan implementasi dari aplikasi tersebut. Dalam PAB berbagai aspek teknis perangkat implementasi lebih menonjol. Hal ini dikarenakan perangkat bergerak memiliki banyak keterbatasan dibandingkan komputer konvensional atau PC.
Teknologi yang bisa dipergunakan untuk pengimplementasian PAB beragam diantaranya adalah J2ME, pada kali ini kita akan menunjukkan salah satu aplikasi J2ME yang sangat sederhana. Meneruskan tradisi belajar bahasa pemrograman, kita akan membuat program yang menampilkan data pribadi dengan J2ME. Berikut akan ditampilkan kode dari aplikasi atau source code data pribadi beserta tampilannya:
ini sourcodenya beserta penjelasannya,
import javax.microedition.lcdui.*;
import javax.microedition.midlet.MIDlet;
/** * @author Herliyana */
public class TuGas_visual extends MIDlet implements CommandListener{
//inisialisasi tombol tombol atau propert yang terdapat di dalam di midlet
private Display display;
private Form fmCurriculumVitae, fmResume;
private Command cmOk,cmExit,cmBack,cmTB, cmList;
private TextField tfNama,tfNIM,tfAlamat,tfTmptLahir,tfTglLahir;
private ChoiceGroup cgProdi;
private int choiceGroupIndex;
private StringItem siNama, siNIM, siAlamat,
siTmptLhr, siTglLhr,siProdi;
private DateField dtField;
private Image img, img2;
private Gauge ge;
private TextBox TB;
private List list;
private boolean midletPaused = false;
//method yang merupakan entry point dari semua aplikasi midlet
public void startApp() {
display = Display.getDisplay(this);
try {
img = Image.createImage("/pkgprofil/Lia.jpg");
}
catch(Exception e) {}
try {
img2 = Image.createImage("/pkgprofil/cop.jpg");
}
catch(Exception e) {}
//membuat tombol tombol yang digunakan untuk berinteraksi dengan pengguna aplikasi
cmExit = new Command("Exit", Command.EXIT, 0);
cmOk = new Command("Ok", Command.SCREEN, 0);
cmBack = new Command("Back", Command.BACK, 0);
cmTB = new Command("TextBox", Command.SCREEN, 0);
cmList = new Command("List", Command.SCREEN,0);
dtField = new DateField("Date", DateField.DATE_TIME);
dtField.setDate(new Date());
ge = new Gauge("Loading", false,
Gauge.INDEFINITE, Gauge.CONTINUOUS_RUNNING);
//textfield untuk Biodata
/**disini kita menggunakan format TextField.ANY maksudnya adalah
disini pengguna dapat memasukkan karakter atau input apapun
kedalam TextField*/
tfNama = new TextField ("Nama : ", "", 30, TextField.ANY);
tfNIM = new TextField ("Nim : ", "", 30, TextField.ANY);
tfAlamat = new TextField ("Alamat : ", "", 30, TextField.ANY);
tfTmptLahir = new TextField ("tempat tanggal lahir : ", "", 30, TextField.ANY);
tfTglLahir = new TextField ("D/M/Y : ", "", 30, TextField.ANY);
TB = new TextBox("Message","",255,TextField.ANY);
TB.addCommand(cmBack);
TB.setCommandListener(this);
//pemilihan Prodi yang diinginkan
CgProdi = new ChoiceGroup("Prodi", Choice.EXCLUSIVE);cgProdi = new ChoiceGroup("Prodi", Choice.EXCLUSIVE);
/** choice grup merupakan daftar elemen yang dapat dipilih dalam form
sepeti halnya list, disini kita menggunakan choice.EXCLUSIVE yang
artinya adalah pengguna dapat memilih satu elemen saja*/
//meng-append pilihan atau choice
cgProdi.append("teknik komputer", null);
cgProdi.append("management informatika", null);
cgProdi.append("rekam medik", null);
cgProdi.append("gizi klinik", null);
fmCurriculumVitae = new Form("Data Pribadi");
fmCurriculumVitae.addCommand(cmExit);
fmCurriculumVitae.addCommand(cmTB);
fmCurriculumVitae.addCommand(cmOk);
fmCurriculumVitae.addCommand(cmList);
fmCurriculumVitae.append(dtField);
fmCurriculumVitae.append(img);
fmCurriculumVitae.append(tfNama);
fmCurriculumVitae.append(tfNIM);
fmCurriculumVitae.append(tfAlamat);
fmCurriculumVitae.append(tfTmptLahir);
fmCurriculumVitae.append(tfTglLahir);
choiceGroupIndex = fmCurriculumVitae.append(cgProdi);
fmCurriculumVitae.append(ge);
fmCurriculumVitae.setCommandListener(this);
//membuat form hasil input user
fmResume = new Form("Your Profile");
//membuat string item untuk menampilkan text dan pilihan yang diisi
siNama = new StringItem("nama : ", null);
siNIM = new StringItem("nim : ", null);
siAlamat = new StringItem("alamat : ", null);
siTmptLhr = new StringItem("tempat tanggal lahir : ", null);
siTglLhr = new StringItem("D/M/Y : ", null);
siProdi = new StringItem("Study : ", null);
//menampilkan StringItem yang nanti akan diisi oleh data hasil input user
fmResume.append(img);
fmResume.append(siNama);
fmResume.append(siNIM);
fmResume.append(siAlamat);
fmResume.append(siTmptLhr);
fmResume.append(siTglLhr);
fmResume.append(siProdi);
//menambahkan command
fmResume.addCommand(cmBack);
fmResume.setCommandListener(this);
//Menambahkan TB
TB = new TextBox("Output TextBox", null,255, TextField.ANY);
TB.addCommand(cmBack);
TB.setCommandListener(this);
//Menambahkan list
list = new List("My List Hobby", Choice.IMPLICIT);
list.append("travelling", img2);
list.append("membaca", img2);
list.append("Ngerumpi", img2);
list.append("memasak", img2);
list.addCommand(cmBack);
list.setCommandListener(this);
//menampilkan form DataPribadi sebagai tampilan awal
display.setCurrent(fmCurriculumVitae);
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public void commandAction(Command c, Displayable d) {
if (d == fmCurriculumVitae){
String nama,nim,alamat,tmptlhr,tgllhr,prodi = null;
//jika tombol/command OK ditekan
if(c == cmOk){
//mendapatkan inputan user
nama = tfNama.getString();
nim = tfNIM.getString();
alamat = tfAlamat.getString();
tmptlhr = tfTmptLahir.getString();
tgllhr = tfTglLahir.getString();
prodi = cgProdi.getString(cgProdi.getSelectedIndex());
//memasukkan hasil input ke StringItem
siNama.setText(nama);
siNIM.setText(nim);
siAlamat.setText(alamat);
siTmptLhr.setText(tmptlhr);
siTglLhr.setText(tgllhr);
siProdi.setText(prodi);
//menampilkan form hasil setelah cmOk ditekan
display.setCurrent(fmResume);
}else if(c == cmExit){ //jika tombol/command Exit ditekan
destroyApp(true);
notifyDestroyed();
}else if(c == cmTB){
TB.setString(tfNama.getString()+"\n"+tfNIM.getString()+""
+"\n"+tfAlamat.getString()+"\n"+tfTmptLahir.getString()+""
+"\n"+tfTglLahir.getString());
display.setCurrent(TB);
}else if (c == cmList){
display.setCurrent(list);
}
}if (d == fmResume){
if(c == cmBack){
//jika tombol/command Back ditekan
//menampilkan kembali form DataPribadi sebagai tampilan default/awal
display.setCurrent(fmCurriculumVitae);
}
}if (d == TB){
if (c == cmBack){
display.setCurrent(fmCurriculumVitae);
}
}if (d == list){
if (c == cmBack){
display.setCurrent(fmCurriculumVitae);
}
}
}
}
ini outputnya
Minggu, 04 Maret 2012
Aplikasi J2ME, Program menampilkan daTa PRibadi
Langganan:
Posting Komentar (Atom)

Tidak ada komentar:
Posting Komentar