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

📄 deletecurriculum.java

📁 J2ME程序设计实例教程的源码
💻 JAVA
字号:
import javax.microedition.lcdui.*;

public class DeleteCurriculum extends MicroComponent 
                                implements CommandListener, MicroDialogListener {
    //
    private MicroComponent preScreen;       //返回界面
    private List curList;                   //课程列表
    private Curriculum[] curs;
    private MicroDialog mDialog;
    private Command cmdDelete;
    private Command cmdBack;
    private Alert alert;
    
    public DeleteCurriculum(Display display, MicroComponent back) {
        super(display);
        this.preScreen = back;
        mDialog = new MicroDialog(display, MicroDialog.YES_NO);
        mDialog.setTitle("删除课程对话框");
        mDialog.setMicroDialogListener(this);
        alert = new Alert("删除", null, null, AlertType.CONFIRMATION);
    }
    
    protected void createModel() {
        curs = this.getAllCurriculum();  //获取课程表中所有的课程
    }
    
    protected void createGUI() {
        curList = new List("删除课程", List.IMPLICIT);
        for(int i=0; i<curs.length; i++) {
            curList.append(curs[i].getName() + "  " 
                            + Curriculum.WEEKS_LABEL[curs[i].getDay()] + "  " 
                            + Curriculum.JIE_LABEL[curs[i].getTime()], null);
        }
        cmdDelete = new Command("删除", Command.SCREEN, 1);
        cmdBack = new Command("返回", Command.BACK, 1);
        curList.addCommand(cmdBack);
        if(curs.length > 0) {
            curList.addCommand(cmdDelete);
        }
        else {
            curList.append("没有课程信息!", null);
        }
        
        curList.setCommandListener(this);
    }
    
    protected Displayable getGUI() {
        return curList;
    }
    
    protected void update() {
        curs = this.getAllCurriculum();
        curList.deleteAll();
        for(int i=0; i<curs.length; i++) {
            curList.append(curs[i].getName() + "  " 
                            + Curriculum.WEEKS_LABEL[curs[i].getDay()] + "  " 
                            + Curriculum.JIE_LABEL[curs[i].getTime()], null);
        }
        curList.removeCommand(cmdDelete);
        if(curs.length > 0) {
            curList.addCommand(cmdDelete);
        }
        else {
            curList.append("没有课程信息!", null);
        }
    }
    
    //对话框处理方法
    public void action(MicroDialog md, int code) {
        if(code == MicroDialog.YES) {
            int index = curList.getSelectedIndex();
            CurriculumDAO cdao = null;
            try {
                cdao = CurriculumDAO.getInstance();
                cdao.openRecordStore();
                cdao.delete(curs[index].getID());
            }
            catch(DAOException daoe) {
                //
            }
            finally {
                try {
                    cdao.closeRecordStore();
                }
                catch(DAOException daoe1) {
                    //
                }
            }
        }
        show();
    }
    
    public void commandAction(Command cmd, Displayable screen) {
        if(cmd == cmdBack) {
            preScreen.show();
        }
        else if(cmd == cmdDelete) {
            int index = curList.getSelectedIndex();
            mDialog.setMessage("您确信要删除下面的课程吗?\n\n" + curs[index].toString());
            mDialog.show();
        }
    }
    
    private Curriculum[] getAllCurriculum() {
        //获取课程数据访问实例对象
        CurriculumDAO dao = CurriculumDAO.getInstance();
        Curriculum[] curricula = null;
        try {
            dao.openRecordStore();      //打开课程对象记录存储
            curricula = dao.getAll();   //获取所有课程
            dao.closeRecordStore();     //关闭记录存储
        }
        catch(DAOException daoe) {
            if(curricula == null) {
                curricula = new Curriculum[0];
            }
        }
        return curricula;
    }
}

⌨️ 快捷键说明

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