Alert in J2ME

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)

Komentar

  1. mantap walau pun sederhana #pake banget hehe
    :)

    BalasHapus
  2. kasih tips donk gimana cara nya istiqomah nulis blog hehe
    #thanks in advance

    BalasHapus
    Balasan
    1. hehe, gimana ya.. :D
      posting 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

      Hapus
    2. inspirasi gak jelas? #pake banget gak? #wakakaka
      #intinya sering komunikasi aja mungkin ya?
      #Oke sip

      Hapus
    3. hahaha... :D oke sip,,
      makasih kunjungannya mas dede. :D

      Hapus
  3. ck.ck.ck.. luar biasa ibu yang satu ini. jarang-jarang ketemu programmer cewek :D

    BalasHapus

Posting Komentar

Terima kasih sudah membaca....^^