import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
import java.util.Calendar;
/**
* 应用程序的主类
*/
public class ECSMIDlet extends MIDlet
implements MicroMenuListener {
private static Ticker ticker; //信息滚动条
private Display display; //屏幕管理器
private MicroMenu mainMenu; //主菜单
private MicroMenu deleteMenu; //删除子菜单
private Command cmdExit; //退出命令
private Command cmdBack; //返回命令
private CurriculaOfDay cod; //显示当天上课情况
private CSBrowser csb; //浏览课程表
private AddCurriculum addCur; //添加课程
private DeleteCurriculum delCur; //逐个删除课程表中的课程
private MicroDialog aboutDialog; //关于信息对话框
public ECSMIDlet() {
display = Display.getDisplay(this);
cmdExit = new Command("退出", Command.EXIT, 1);
cmdBack = new Command("返回", Command.BACK, 1);
createMenu(); //创建菜单
}
protected void startApp() {
mainMenu.show();
}
protected void pauseApp() {
//
}
protected void destroyApp(boolean unconditional) {
//
}
//创建主菜单和删除功能子菜单
private void createMenu() {
mainMenu = new MicroMenu("电子课程表", display);
String[] items = {"当天课程", "浏览课程表", "添加课程", "删除", "关于..."};
for(int i=0; i<items.length; i++) {
mainMenu.addItem(items[i]);
}
mainMenu.setCommand(cmdExit);
mainMenu.setMicroMenuListener(this);
deleteMenu = new MicroMenu("删除", display);
String[] delItems = {"删除所有课程", "逐个删除"};
for(int i=0; i<delItems.length; i++) {
deleteMenu.addItem(delItems[i]);
}
deleteMenu.setCommand(cmdBack);
deleteMenu.setMicroMenuListener(this);
}
//当用户选择菜单项时,系统自动调用该方法。
public void transactItem(MicroMenu mm, int index) {
if(mm == mainMenu) {
switch(index) {
case 0: //当天课程
showCurricula();
break;
case 1: //浏览课程表
browserCS();
break;
case 2: //添加课程
addCurriculum();
break;
case 3: //删除
deleteMenu.show();
break;
case 4: //关于...
about();
}
}
else if(mm == deleteMenu) {
switch(index) {
case 0: //删除所有课程
delAllCurriculum();
break;
case 1: //逐个删除
deleteCurriculum();
}
}
}
//显示当天的课程信息
private void showCurricula() {
if(cod == null) {
cod = new CurriculaOfDay(display, mainMenu);
}
Calendar cal = Calendar.getInstance();
int week = cal.get(Calendar.DAY_OF_WEEK);
if(week == 1) {
week = 6;
}
else {
week -= 2;
}
cod.setWeek(week);
cod.show();
}
//浏览课程表
private void browserCS() {
if(csb == null) {
csb = new CSBrowser(display, mainMenu);
}
csb.show();
}
//添加课程
private void addCurriculum() {
if(addCur == null) {
addCur = new AddCurriculum(display, mainMenu);
}
addCur.show();
}
//逐个删除课程表中的课程
private void deleteCurriculum() {
if(delCur == null) {
delCur = new DeleteCurriculum(display, deleteMenu);
}
delCur.show();
}
//关于信息
public void about() {
if(aboutDialog == null) {
aboutDialog = new MicroDialog(display, MicroDialog.OK);
aboutDialog.setTitle("关于...");
aboutDialog.setMessage(" 电子课程表为教师和学生随时随地查看上课信息提供了方便。"
+ "该软件能够运行于所有支持J2ME MIDP2.0的手机中。\n\n"
+ "作者: 杨光" + "\n时间:2007-6-23");
aboutDialog.setMicroDialogListener(new MicroDialogListener() {
public void action(MicroDialog md, int code) {
mainMenu.show();
}
});
}
aboutDialog.show();
}
//删除课程表中的所有课程
private void delAllCurriculum() {
MicroDialog mDialog = new MicroDialog(display, MicroDialog.YES_NO);
mDialog.setTitle("删除课程对话框");
mDialog.setMessage("您确信要删除课程表中所有的课程吗?");
mDialog.setMicroDialogListener(new MicroDialogListener() {
public void action(MicroDialog md, int code) {
if(code == MicroDialog.YES) {
CurriculumDAO cdao = null;
Curriculum[] curs = null;
try {
cdao = CurriculumDAO.getInstance();
cdao.openRecordStore();
curs = cdao.getAll();
for(int i=0; i<curs.length; i++) {
cdao.delete(curs[i].getID());
}
}
catch(DAOException daoe) {
//
}
finally {
try {
cdao.closeRecordStore();
}
catch(DAOException daoe1) {
//
}
}
}
mainMenu.show();
}
});
mDialog.show();
}
//当用户触发菜单上的命令(选择命令除外)时,系统自动调用该方法。
public void transactCommand(MicroMenu mm, Command cmd) {
if(mm == mainMenu && cmd == cmdExit) { //退出
destroyApp(true);
notifyDestroyed();
}
else if(mm == deleteMenu && cmd == cmdBack) { //返回主菜单
mainMenu.show();
}
}
//获取课程表信息滚动条
public static Ticker getTicker() {
if(ticker == null) {
Calendar calendar = Calendar.getInstance();
String[] dayOfWeek = {"星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
String riqi = calendar.get(Calendar.YEAR) + "年"
+ (calendar.get(Calendar.MONTH)+1) + "月"
+ calendar.get(Calendar.DATE) + "日"
+ dayOfWeek[calendar.get(Calendar.DAY_OF_WEEK)-1];
String info = "欢迎使用电子课程表! " + riqi;
ticker = new Ticker(info);
}
return ticker;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
J2ME课程表用于学生上课用得
共53个文件
class:34个
java:15个
mf:1个
4星 · 超过85%的资源 需积分: 3 40 下载量 198 浏览量
2009-08-14
16:13:47
上传
评论
收藏 77KB RAR 举报
温馨提示
J2ME课程表用于学生上课用得,可以供J2ME爱好者研究一下,J2ME课程表用于学生上课用得,可以供J2ME爱好者研究一下,J2ME课程表用于学生上课用得,可以供J2ME爱好者研究一下
资源推荐
资源详情
资源评论
收起资源包目录
CurriculumSchedule.rar (53个子文件)
CurriculumSchedule
classes
CurriculaOfDay.class 4KB
FindFilter.class 1KB
ECSMIDlet$1.class 647B
ECSMIDlet$2.class 2KB
MicroDialogListener.class 156B
CurrComparator.class 1KB
DAOException.class 324B
MicroMenu.class 3KB
MicroComponent.class 817B
Curriculum.class 4KB
MicroDialog.class 3KB
MicroMenuListener.class 233B
ECSMIDlet.class 6KB
CurriculumDAO.class 5KB
DeleteCurriculum.class 5KB
CSBrowser.class 2KB
AddCurriculum.class 6KB
res
src
Curriculum.java 3KB
ECSMIDlet.java 7KB
MicroDialog.java 3KB
MicroMenuListener.java 568B
CurrComparator.java 2KB
CurriculaOfDay.java 3KB
MicroComponent.java 739B
CSBrowser.java 1KB
MicroDialogListener.java 296B
CurriculumDAO.java 5KB
MicroMenu.java 2KB
DeleteCurriculum.java 4KB
FindFilter.java 2KB
AddCurriculum.java 5KB
DAOException.java 155B
bin
MANIFEST.MF 204B
CurriculumSchedule.jar 19KB
CurriculumSchedule.jad 266B
project.properties 119B
tmpclasses
CurriculaOfDay.class 3KB
FindFilter.class 1KB
ECSMIDlet$1.class 647B
ECSMIDlet$2.class 1KB
MicroDialogListener.class 156B
CurrComparator.class 1KB
DAOException.class 324B
MicroMenu.class 2KB
MicroComponent.class 780B
Curriculum.class 4KB
MicroDialog.class 3KB
MicroMenuListener.class 233B
ECSMIDlet.class 5KB
CurriculumDAO.class 4KB
DeleteCurriculum.class 4KB
CSBrowser.class 2KB
AddCurriculum.class 5KB
lib
tmplib
共 53 条
- 1
资源评论
- koneng2162013-08-24这个真的很好,可以直接使用
jf3612797
- 粉丝: 12
- 资源: 90
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功