Disusun Oleh : Ferlianus Gulo | Website : ferlianus-gulo.blogspot.com 1
BAB II
PEMOGRAMAN APLIKASI NILAI MAHASISWA
DAN WALPAPER DENGAN J2ME
PEMBAHASAN MATERI :
Pembuatan program Aplikasi Nilai Mahasiswa dengan Sun Java Wireless Toolkit 2.5.2.
Java mobile yang dipelajari adalah J2ME.
Membuat Aplikasi Login Mahasiswa
Membuat walpaper
TUJUAN BELAJAR :
Mahasiswa dapat mengetahui dan memahami pembuatan program kalkulator ( kali, bagi, tambah dan kurang ) menggunakan java mobile J2ME dan menampilkannya ke Ponsel.
A. JAVA MOBILE
Java Mobile biasa dikenal dengan istilah J2ME (Java 2 MicroEdition) merupakan salah satu bagian dari paket pemrograman Java. Paket pemrograman Java untuk saat ini pada umumnya terbagi tiga, yaitu :
a) Java 2 Enterprise Edition (J2EE).
Paket ini digunakan pada hardware yang mempunyai spesifikasi dan memori yang besar seperti pada komputer server.
b) Java 2 Standard Edition (J2SE).
Paket J2SE digunakan pada komputer desktop. c) Java 2 MicroEdition (J2ME).
Paket J2ME digunakan pada perangkat keras yang memiliki memori kecil seperti ponsel, PDA dan sebagainya.
Disusun Oleh : Ferlianus Gulo | Website : ferlianus-gulo.blogspot.com 2
CDC (Connected Device Configurations). Untuk aplikasi pada paket J2ME diberi nama MIDlet.
Perbedaannya CLDC dan CDC dapat dilihat pada Tabel 1.
CLDC CDC
Mengimplementasikan sebagian fitur dari J2SE Mengimplementasikan seluruh fitur dari
J2SE
Menggunakan KVM (Kilo Virtual Machine) Menggunakan CVM
Digunakan pada Handphone, PDA, Pager yang memiliki memori terbatas (160-512)kb
Digunakan pada perangkat internet Televisi, Nokia communicator yang
memiliki memori minimal 2 Mb
Processor 16 / 32 bit Processor 32 bit
B. Membuat Aplikasi Sederhana dengan J2ME
1. Membuat Aplikasi Nilai Mahasiswa
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class AplikasiNilai extends MIDlet implements CommandListener{
Command cmdExit,cmdBack,cmdHitung;
Display dis;
Form frmInput,frmOutput;
TextField tfMakul,tfNilai;
StringItem siMakul,siSKS,siNilai,siGrade,siBobot;
ChoiceGroup cg1;
public AplikasiNilai(){
cmdExit = new Command("Keluar",Command.EXIT,0);
cmdBack = new Command("OK",Command.SCREEN,0);
cmdHitung = new Command("Proses",Command.SCREEN,0);
cg1=new ChoiceGroup("SKS",Choice.EXCLUSIVE);
cg1.append("2 SKS",null);
cg1.append("3 SKS",null);
Disusun Oleh : Ferlianus Gulo | Website : ferlianus-gulo.blogspot.com 3
frmInput=new Form("Form Input | Ferlianus Gulo");
tfMakul = new TextField("Mata Kuliah","",30,TextField.ANY);
tfNilai = new TextField("Nilai","",30,TextField.NUMERIC);
frmInput.append(tfMakul);
frmInput.append(cg1);
frmInput.append(tfNilai);
frmInput.addCommand(cmdExit);
frmInput.addCommand(cmdHitung);
frmInput.setCommandListener(this);
frmOutput=new Form("Form Output | Ferlianus Gulo");
siMakul=new StringItem("Mata Kuliah","");
siSKS=new StringItem("SKS","");
siNilai=new StringItem("Nilai","");
siGrade=new StringItem("Grade","");
siBobot=new StringItem("Bobot Nilai",null);
frmOutput.append(siMakul);
frmOutput.setCommandListener(this);
}
Disusun Oleh : Ferlianus Gulo | Website : ferlianus-gulo.blogspot.com 4 }
public void commandAction(Command c,Displayable d){
Disusun Oleh : Ferlianus Gulo | Website : ferlianus-gulo.blogspot.com 5 siGrade.setText("A");
nilaigrade=4;
}
bobotnilai=sks*nilaigrade;
siBobot.setText(Integer.toString(bobotnilai));
dis.setCurrent(frmOutput);
}else if(c==cmdExit){
destroyApp(false);
notifyDestroyed();
}else{
dis.setCurrent(frmInput);
}
}
}
Tampilan hasil dari Program aplikasi nilai mahasiswa :
Disusun Oleh : Ferlianus Gulo | Website : ferlianus-gulo.blogspot.com 6
2. Login Mahasiswa
Contoh :
Nama/ LoginID : Ferlianus Password : Gulo
Listing Login Mahasiswa
import javax.microedition.midlet.MIDlet;
import javax.microedition.lcdui.*;
public class AplikasiLogin extends MIDlet implements CommandListener
{
private Display display;
private TextField userName,password;
public Form form;
private Command login,cancel;
private Image img, imge, img2;
Command cmdExit,cmdBack,cmdHitung;
Display dis;
Form frmInput,frmOutput;
TextField tfMakul,tfNilai;
StringItem siMakul,siSKS,siNilai,siGrade,siBobot;
ChoiceGroup cg1;
public AplikasiLogin()
{
form = new Form("Sign in | Ferlianus Gulo");
userName = new TextField("LoginID:", "", 30, TextField.ANY);
password = new TextField("Password:", "", 30, TextField.PASSWORD);
cancel = new Command("Cancel", Command.CANCEL, 2);
login = new Command("Login", Command.OK, 2);
try{
Disusun Oleh : Ferlianus Gulo | Website : ferlianus-gulo.blogspot.com 7 imge = Image.createImage("/gagal.png");
img2 = Image.createImage("/sukses.png");
}
catch(Exception e)
{
System.out.println(e.getMessage());
}
cmdExit = new Command("Keluar",Command.EXIT,0);
cmdBack = new Command("OK",Command.SCREEN,0);
cmdHitung = new Command("Proses",Command.SCREEN,0);
cg1=new ChoiceGroup("SKS",Choice.EXCLUSIVE);
cg1.append("2 SKS",null);
cg1.append("3 SKS",null);
cg1.append("6 SKS",null);
frmInput=new Form("Form Input | Ferlianus Gulo");
tfMakul = new TextField("Mata Kuliah","",30,TextField.ANY);
tfNilai = new TextField("Nilai","",30,TextField.NUMERIC);
frmInput.append(tfMakul);
frmInput.append(cg1);
frmInput.append(tfNilai);
frmInput.addCommand(cmdExit);
frmInput.addCommand(cmdHitung);
frmInput.setCommandListener(this);
frmOutput=new Form("Form Output | Ferlianus Gulo");
siMakul=new StringItem("Mata Kuliah","");
siSKS=new StringItem("SKS","");
siNilai=new StringItem("Nilai","");
siGrade=new StringItem("Grade","");
siBobot=new StringItem("Bobot Nilai",null);
Disusun Oleh : Ferlianus Gulo | Website : ferlianus-gulo.blogspot.com 8 frmOutput.append(siSKS);
frmOutput.append(siNilai);
frmOutput.append(siGrade);
frmOutput.append(siBobot);
frmOutput.addCommand(cmdBack);
frmOutput.setCommandListener(this);
}
public void startApp() {
display = Display.getDisplay(this);
try{form.append(img);}catch(Exception e){}
form.append(userName);
form.append(password);
form.addCommand(cancel);
form.addCommand(login);
form.setCommandListener(this);
display.setCurrent(form);
}
public void pauseApp() {}
public void destroyApp(boolean unconditional) {
notifyDestroyed();}
public void validateUser(String name, String password) {
if (name.equals("Ferlianus") && password.equals("Gulo"))
{
showMsg();
} else
{
tryAgain();
}
}
public void showMsg()
{
Disusun Oleh : Ferlianus Gulo | Website : ferlianus-gulo.blogspot.com 9 dis.setCurrent(frmInput);
}
public void tryAgain()
{
Alert error = new Alert("Login salah", "coba lagi", imge, AlertType.ERROR);
error.setTimeout(900);
error.setImage(imge);
userName.setString("");
password.setString("");
display.setCurrent(error, form);
}
public void commandAction(Command c, Displayable d)
{
String label = c.getLabel();
if(label.equals("Cancel"))
{
destroyApp(true);
} else if(label.equals("Login")){
validateUser(userName.getString(), password.getString());
}
if(c==cmdBack){
dis.setCurrent(frmInput);
}else if(c==cmdHitung){
int nilai,nilaigrade,bobotnilai,sks;
siMakul.setText(tfMakul.getString());
if(cg1.isSelected(0)){
siSKS.setText("2 SKS");
sks=2;
}else if(cg1.isSelected(1)){
siSKS.setText("3 SKS");
sks=4;
Disusun Oleh : Ferlianus Gulo | Website : ferlianus-gulo.blogspot.com 10 siSKS.setText("6 SKS");
sks=6;
}
siNilai.setText(tfNilai.getString());
nilai=Integer.parseInt(tfNilai.getString());
if(nilai<=49){
siGrade.setText("E");
nilaigrade=0;
}else if(nilai<=59){
siGrade.setText("D");
nilaigrade=1;
}else if(nilai<=74){
siGrade.setText("C");
nilaigrade=2;
}else if(nilai<=80){
siGrade.setText("B");
nilaigrade=3;
}else{
siGrade.setText("A");
nilaigrade=4;
}
bobotnilai=sks*nilaigrade;
siBobot.setText(Integer.toString(bobotnilai));
dis.setCurrent(frmOutput);
}else if(c==cmdExit){
destroyApp(false);
notifyDestroyed();
}else{
dis.setCurrent(frmInput);
}
}
Disusun Oleh : Ferlianus Gulo | Website : ferlianus-gulo.blogspot.com 11
Tampilan hasil dari Program aplikasi login mahasiswa :
Gambar 2.1. Tampilan Hasil login Mahasiswa
Keterangan :
Gambar/photo (img) kita simpan didalam res dengan File name : logo dan Format/type : png atau jpg.
img = Image.createImage("/logo.png");
imge = Image.createImage("/gagal.jpg");
img2 = Image.createImage("/sukses.png");
3. Walpaper
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
public class gambar extends MIDlet implements CommandListener{
Disusun Oleh : Ferlianus Gulo | Website : ferlianus-gulo.blogspot.com 12 private Form form;
private Image img1,img2,img3,img4,img5;
Command cmdKeluar = new Command("Keluar",Command.EXIT,0);
public gambar(){
form = new Form("Gambar | FERLIANUS GULO");
form.addCommand(cmdKeluar); form.setCommandListener(this); try
{
Image gambar = Image.createImage("/Ferlianus.jpg");
ImageItem compGambar = new ImageItem("Ferlianus Gulo",gambar,Item.LAYOUT_CENTER,"Picture");
public void destroyApp(boolean unconditional) {
Disusun Oleh : Ferlianus Gulo | Website : ferlianus-gulo.blogspot.com 13 public void commandAction(Command com,Displayable dis)
{
if(com==cmdKeluar){
destroyApp(false); }
} }
Tampilan hasil dari Program Walpaper
Disusun Oleh : Ferlianus Gulo | Website : ferlianus-gulo.blogspot.com 14
DAFTAR PUSTAKA
1. Irawan, Java Mobile, maxiko, Palembang, ______
Hak Cipta © 2013 pada penulis,
Hak Cipta dilindungi undang-undang. Seluruh dokumen ini dapat digunakan dan disebarkan secara bebas untuk tujuan belajar bukan komersial (non-profit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan izin tertulis terlebih dahulu dari Penulis.
TENTANG PENULIS,