⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 uicontroler.java

📁 移动图书馆 用j2me 加 jsp servlet 开发 环境 netbeans + tomcat
💻 JAVA
字号:
/*
 * UIControler.java
 *
 * Created on 2006年5月11日, 下午12:20
 *
 * To change this template, choose Tools | Options and locate the template under
 * the Source Creation and Management node. Right-click the template and choose
 * Open. You can then make changes to the template in the Source Editor.
 */

package cn.edu.uestc.pandawireless.ui;

import cn.edu.uestc.pandawireless.LibMidlet;
import cn.edu.uestc.pandawireless.model.HttpHandler;
import javax.microedition.lcdui.*;
import javax.microedition.io.*;
import java.io.IOException;
import java.io.*;
import java.lang.Thread;
import cn.edu.uestc.pandawireless.ui.table.*;


/**
 *
 * @author 熊猫晓希
 */
public class UIControler {
    public LibMidlet libmidlet;
    private HelpUI helpUI;
    private WelcomeUI welcomeUI;
    private MainMenuUI mainmenuUI;
    private LoginUI loginUI;
    private ChangePwdUI changepwdUI;
    private SearchBookUI searchUI;
    public ProgressUI progressUI;  //为了简单起见,设置成public
    private NoBookUI nobookUI;
    //private SearchResultUI searchresultUI;
    //private Table table;  //空Table,具体可用setTableModel方法给Table设置model
    //private LoginSuccessUI lsUI;
    private BorrowDetailUI bdUI;
    private EachBookDetailUI ebdUI;
    
    private HttpHandler httphandler = null;
    
    private Alert errorUI = null;
    private Alert successUI = null;
    public BorrowDetailUI borrowui = null;
    
    public static class EventID{
        private EventID(){
        }
        public static final byte SHOW_LOGIN = 100;
        public static final byte SHOW_CHANGE_PWD = 102;
        public static final byte SHOW_SEARCH_BOOK = 101;
        public static final byte SHOW_HELP = 103;
        
        public static final byte HELP_BACKTO_MAINMENU = 1;
        public static final byte EXIT = 2;
        public static final byte LOGIN_BACKTO_MAINNENU = 3;
        public static final byte LOGIN = 4;
        public static final byte CHANGE_PWD = 5;
        public static final byte SEARCH_BOOK = 6;
        public static final byte CHANGE_PWD_BACKTO_MAINMENU = 7;
        public static final byte SEARCH_BOOK_BACKTO_MAINMENU = 8;
        public static final byte LOGIN_SUCCESS_NO_BOOK = 9;
        public static final byte LOGIN_SUCCESS_HAS_BOOK = 10;
        public static final byte SHOW_SEARCH_RESULT = 11;
        public static final byte SHOW_USER_BOOK = 12;
        public static final byte SHOW_EACH_BOOK = 13;
        
    }
    
    /** Creates a new instance of UIControler */
    public UIControler(LibMidlet midlet) {
        this.libmidlet = midlet;
    }
    public void initUpdate(){
        welcomeUI = new WelcomeUI();
        mainmenuUI = new MainMenuUI(this);
        helpUI = new HelpUI(this);
        loginUI = new LoginUI(this);
        changepwdUI = new ChangePwdUI(this);
        searchUI = new SearchBookUI(this);
        httphandler = new HttpHandler(this);
        //httphandler.setURL("http://202.115.6.139:8080/LibServer/action");
        httphandler.setURL("http://mlib.xicp.net:8080/LibServer/action");
        httphandler.start();
        errorUI = new Alert("错误信息"); 
        successUI = new Alert("成功信息");
        progressUI = new ProgressUI("进程信息", httphandler);
        nobookUI = new NoBookUI(this);
        //searchresultUI = new SearchResultUI(this);
        //table = new Table();
        //lsUI = new LoginSuccessUI(this);
        //bdUI = new BorrowDetailUI(this, data)
        displayWelcome();
    }
    public void displayWelcome(){
        libmidlet.setCurrent(welcomeUI);
        try{
            Thread.sleep(2000);
        }catch (InterruptedException e){
            
        }
        displayMainMenu();        
    }
    public void displayError(String message){
        errorUI.setType(AlertType.ERROR);
        errorUI.setString(message);
        errorUI.setTimeout(3000);
        libmidlet.setCurrent(errorUI, changepwdUI);
    }
    public void displayErrorforLogin(String message){
        errorUI.setType(AlertType.ERROR);
        errorUI.setString(message);
        errorUI.setTimeout(3000);
        libmidlet.setCurrent(errorUI, loginUI);
    }
    public void displayErrorforSearch(String message){
        errorUI.setType(AlertType.ERROR);
        errorUI.setString(message);
        errorUI.setTimeout(3000);
        libmidlet.setCurrent(errorUI, searchUI);
    }
    public void displaySuccess(String message){
        successUI.setType(AlertType.CONFIRMATION);
        successUI.setString(message);
        successUI.setTimeout(3000);
        libmidlet.setCurrent(successUI, mainmenuUI);
    }
    public void displayProgress(){
        progressUI.deleteAll();
        progressUI.append("正在连接服务器,请稍候...");
        libmidlet.setCurrent(progressUI);
    }
    private void displayMainMenu(){
        libmidlet.setCurrent(mainmenuUI);
    }
//    public void setTableModel(TableModel model){
//        table.setTableModel(model);
//    }
//    public void setSearchResultTable(Scrollable c){
//        searchresultUI.setScrollable(c);
//    }
    
    public void handleEvent(int event){
        switch(event){
            case EventID.SHOW_HELP:
            {
                libmidlet.setCurrent(helpUI);
                break;
            }
            case EventID.HELP_BACKTO_MAINMENU:
            {
                displayMainMenu();
                break;
            }
            case EventID.LOGIN_SUCCESS_NO_BOOK:
            {
                libmidlet.setCurrent(nobookUI);
                break;
            }
            case EventID.LOGIN_SUCCESS_HAS_BOOK:
            {
                break;
            }
            case EventID.LOGIN_BACKTO_MAINNENU:
            {
                displayMainMenu();
                break;
            }
            case EventID.SHOW_LOGIN:
            {
                libmidlet.setCurrent(loginUI);
                break;
            }
            case EventID.SHOW_CHANGE_PWD:
            {
                libmidlet.setCurrent(changepwdUI);
                break;
            }
            case EventID.SHOW_SEARCH_BOOK:
            {
                libmidlet.setCurrent(searchUI);
                break;
            }
            case EventID.SHOW_SEARCH_RESULT:
            {
//                this.setSearchResultTable(table);
//                libmidlet.setCurrent(searchresultUI);
                break;
            }
            case EventID.SEARCH_BOOK_BACKTO_MAINMENU:
            {
                displayMainMenu();
                break;
            }
            case EventID.CHANGE_PWD_BACKTO_MAINMENU:
            {
                displayMainMenu();
                break;
            }
            case EventID.EXIT:
            {
                libmidlet.exit();
                break;
            }
         
        }
    }
//    public void handleEvent(int event,Table table){
//        switch(event){
//            case EventID.SHOW_USER_BOOKS:
//            {
//                lsUI.setScrollable(table);
//                this.libmidlet.setCurrent(lsUI);
//                break;
//            }
//        }
//    }
    public void handleEvent(int event,final Object[] objs){
        //HttpConnection conn;
        switch(event){
            case EventID.CHANGE_PWD:
            {

               httphandler.setOP(OperateConstants.CHANGE_PWD);
               httphandler.setObjects(objs);
               synchronized(this){
                notify();
               }
               break;
            }
            case EventID.LOGIN:
            {
                httphandler.setOP(OperateConstants.LOGIN);
                httphandler.setObjects(objs);
                synchronized(this){
                    notify();
                }
                break;
            }
            case EventID.SEARCH_BOOK:
            {
                httphandler.setOP(OperateConstants.SEARCH_BOOK);
                httphandler.setObjects(objs);
                synchronized(this){
                notify();
               }
               break;
            }
            case EventID.SHOW_USER_BOOK:
            {
                bdUI = new BorrowDetailUI(this,(String[])objs, httphandler);
                libmidlet.setCurrent(bdUI);
                break;
            }
            case EventID.SHOW_EACH_BOOK:
            {
                ebdUI = new EachBookDetailUI(this,(String[])objs, httphandler);
                libmidlet.setCurrent(ebdUI);
                break;
            }
        }
    }
    
    
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -