J2ME 의 단순 경고 메시지 프로그램 ( 모바일 환경 ) - CLDC Toolkit 이용

반응형



읽기전에 손가락 한번 클릭~ >_<

고마워요 ~ Chu ~ ♥



import javax.microedition.lcdui.Alert;
import javax.microedition.lcdui.AlertType;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.TextBox;
import javax.microedition.lcdui.TextField;
import javax.microedition.midlet.MIDlet;

public class AlertTestMIDlet extends MIDlet implements CommandListener {
 
 private TextBox textbox;
 private Command ok_cmd;
 private Command exit_cmd;
 private Command back_cmd;
 private Display display;
 private Alert alert;
 
 public AlertTestMIDlet() {
  ok_cmd = new Command("OK", Command.OK, 1);
  exit_cmd = new Command("Exit", Command.EXIT, 1);
  back_cmd = new Command("Back", Command.BACK, 1);
 }
 
 public void startApp()  {
  textbox = new TextBox("5개의 문자를 입력하세요",
           "", 20, TextField.ANY);
  textbox.addCommand(ok_cmd);
  textbox.addCommand(exit_cmd);
  
  display = Display.getDisplay(this);
  
  textbox.setCommandListener(this);
  display.setCurrent(textbox);
 }
 public void pauseApp() {  }
 
 public void destroyApp(boolean arg0) { }
 
 public void commandAction(Command cmd, Displayable disp) {
  if(cmd == ok_cmd){
   String tb = textbox.getString();
   
  if(tb.length() == 5){
   Image ok_img = null;
   
   try{
    ok_img = Image.createImage("/MID.PNG");
   } catch ( Exception e ){
    System.out.println("ok_img.png is not created.");
    e.printStackTrace();
   }
   
   alert = new Alert("Alert", "축하!\n 정확하게 입력하였습니다",
         ok_img, AlertType.INFO);
   alert.addCommand(back_cmd);
   alert.setCommandListener(this);
   alert.setTimeout(50000);
   display.setCurrent(alert, textbox);
   
  } else {
   Image err_img = null;
   try{
    err_img = Image.createImage("/MID_err.PNG");
   } catch ( Exception e ){
    System.out.println("err_img.png is not created");
    e.printStackTrace();
   }
   
   Alert alert = new Alert("Alert", " 경고!! \n 다시 입력하세요",
           err_img, AlertType.ERROR);
   
   alert.addCommand(back_cmd);
   alert.setCommandListener(this);
   alert.setTimeout(50000);
   display.setCurrent(alert, textbox);
  }
  } else if ( cmd == exit_cmd){
   notifyDestroyed();
  } else if ( cmd == back_cmd ){
   startApp();
  }
 }
} // 클래스 끝



기존 책의 소스를 참고했고,
불 필요한 부분 없애고.... 있어야 되는 부분 추가시켰음...

추가부분 : 경고 메시지 후 디폴트값으로 지정되어 있는 (2000) : 2초 의 값을
메소드 를 이용하여 50초로 지정 : alert.setTimeOut(50000)

경고 메시지 출력 후 되돌아 가기 부분 : back 버튼 구현이 되어있지 않아,
새롭게 추가 시킴 - back_cmd 리스너 등록 및 설정






참고이미지 ㅋㅋㅋㅋ




반응형

댓글

Designed by JB FACTORY