Bahan ngajar minggu-minggu lalu, tentang Alert di J2ME. Alert ini termasuk salah satu turunan class Displayable, dimana dia bisa langsung ditampilkan dengan menggunakan class abstract Display.
Nah, yang kemarin aku ajarin adalah bikin alert info jika login gagal (gak apa-apa ya, kalo simple pake banget kaya gini, :D), yang hasil jadinya kaya gini:
Berikut ini source code-nya
AlertInfo.java
import java.io.IOException;
import javax.microedition.lcdui.Alert;
import javax.microedition.lcdui.AlertType;
import javax.microedition.lcdui.Image;
/**
*
* @author dyahfajar
*/
public class AlertInfo extends Alert{
Image img;
public AlertInfo() {
super("Warning");
// instansiasi image
try {
img = Image.createImage("/oh.png") ;
} catch (IOException ex) {
ex.printStackTrace();
}
// mengatur image yang muncul pada alert
setImage(img);
// mengatur jenis alert
setType(AlertType.WARNING);
// mengatur lamanya alert muncul
setTimeout(5000);
}
}
MainMenu.java
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.List;
import javax.microedition.lcdui.Ticker;
import javax.microedition.midlet.*;
/**
* @author dyahfajar
*/
public class MainMenu extends MIDlet implements CommandListener{
List menuList;
Display dsp;
// deklarasi untuk pemanggilan class lain
FormLogin frmLogin;
AlertInfo alert;
// Pendefinisian Ticker
private Ticker ticker;
public MainMenu() {
// instansiasi setiap object yang dideklarasikan
dsp = Display.getDisplay(this);
frmLogin = new FormLogin();
alert = new AlertInfo();
ticker = new Ticker("Aplikasi buatan ku lho.. ");
menuList = new List("Menu Utama", List.IMPLICIT);
// pendefinisian daftar menu yang akan muncul sebagai list
menuList.append("List Multiple", null); // --> index 0
menuList.append("List Exclusive", null); // --> index 1
menuList.append("Exit", null); // --> index 2
//melakukan pengaturan supaya form dan list bisa mendengarkan event
// yang dilakukan oleh user
frmLogin.setCommandListener(this);
menuList.setCommandListener(this);
// ini untuk menempelkan ticker pada display menulist
menuList.setTicker(ticker);
}
public void startApp() {
dsp.setCurrent(frmLogin);
}
public void pauseApp() {
}
public void destroyApp(boolean unconditional) {
}
public void commandAction(Command c, Displayable d) {
if (c == frmLogin.cmdLogin){
//pengecekan input username dan password
if (frmLogin.txtUser.getString().equals("dyah") &&
frmLogin.txtPasswd.getString().equals("dyah")){
dsp.setCurrent(menuList);
}
// perintah yang dijalankan jika salah menginputkan username & password
else {
alert.setString("Login salah, silakan coba lagi");
dsp.setCurrent(alert);
}
} else if (c == menuList.SELECT_COMMAND){
//ngecek satu persatu list
if (menuList.getSelectedIndex() == 2){
notifyDestroyed();
destroyApp(true);
} else if (menuList.getSelectedIndex() == 0){
//
} else if (menuList.getSelectedIndex() == 1){
//
}
}
}
}
Username dan password disini tidak aku simpan dalam record store, jadi masih di-hardcode (sudah ku bilang ini simple banget, :D). Segitu dulu aja deh, semoga bisa memberikan pemahaman terkait Alert (bagi yang belum paham :D)

mantap walau pun sederhana #pake banget hehe
BalasHapus:)
hahaha,, makasih #pake banget.. :D
Hapuskasih tips donk gimana cara nya istiqomah nulis blog hehe
BalasHapus#thanks in advance
hehe, gimana ya.. :D
Hapusposting di blog ini juga lebih banyak hasil inspirasi gak jelas, hihi.. :D
mungkin sering ngobrol sama orang2, kadang kan dapat ilmu yang bisa di tulis di blog.. hehe.. :D
inspirasi gak jelas? #pake banget gak? #wakakaka
Hapus#intinya sering komunikasi aja mungkin ya?
#Oke sip
hahaha... :D oke sip,,
Hapusmakasih kunjungannya mas dede. :D
oke sip
Hapusck.ck.ck.. luar biasa ibu yang satu ini. jarang-jarang ketemu programmer cewek :D
BalasHapushehe, makasih kunjungannya mas rajiv.. :D
Hapus