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

📄 curriculaofday.java

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

/**
 * 该类提供了显示一天上课情况的功能。
 */
public class CurriculaOfDay extends MicroComponent 
                            implements CommandListener {
    //
    private MicroComponent preScreen;   //前一个界面
    private StringItem[] currItems;     //一天的上课信息
    private Form form;
    private int week;                   //日期
    
    public CurriculaOfDay(Display display, MicroComponent back) {
        super(display);
        this.preScreen = back;
    }
    
    //设置日期
    public void setWeek(int week) {
        this.week = week;
    }
    
    protected void createModel() {
        currItems = new StringItem[5];
        for(int i=0; i<5; i++) {
            currItems[i] = new StringItem(Curriculum.JIE_LABEL[i], "无课");
        }
        readCurrInfo();      //读取一天的上课信息
    }
    
    protected void createGUI() {
        form = new Form(Curriculum.WEEKS_LABEL[week]+ "的课程");
        form.setTicker(ECSMIDlet.getTicker());
        Command cmdBack = new Command("返回", Command.BACK, 1);
        form.addCommand(cmdBack);
        form.setCommandListener(this);
        
        for(int i=0; i<currItems.length; i++) {
            form.append(currItems[i]);
            form.append(new Spacer(1, 10));
        }
    }
    
    protected Displayable getGUI() {
        return form;
    }
    
    protected void update() {
        for(int i=0; i<currItems.length; i++) {
            currItems[i].setText("无课");
        }
        form.setTitle(Curriculum.WEEKS_LABEL[week]+ "的课程");
        readCurrInfo();
    }
    
    //CommandListener接口中的方法。当用户触发屏幕上“返回”命令对应的软按钮时,
    //系统自动调用该方法。
    //cmd是屏幕上的命令,d是命令所在的屏幕
    public void commandAction(Command cmd, Displayable screen) {
        if(cmd.getCommandType() == Command.BACK) {
            preScreen.show();    //返回
        }
    }
    
    //读取课程信息
    private void readCurrInfo() {
        //获取课程数据访问实例对象
        CurriculumDAO dao = CurriculumDAO.getInstance();
        Curriculum[] curricula = null;
        try {
            dao.openRecordStore();      //打开课程对象记录存储
            curricula = dao.find(week); //查找
            dao.closeRecordStore();     //关闭记录存储
        }
        catch(DAOException daoe) {
            if(curricula == null) {
                curricula = new Curriculum[0];
            }
        }
        
        int index = 0;
        for(int i=0; i<curricula.length; i++) {
            index = curricula[i].getTime();
            currItems[index].setText("\n  课程: " + curricula[i].getName() 
                                    + "\n  任课教师: " + curricula[i].getTeacher()
                                    + "\n  教室: " + curricula[i].getClassroom()
                                    + "\n  附加信息:\n    " + curricula[i].getRemark()
                                );
        }
    }
}

⌨️ 快捷键说明

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