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

📄 calendareditform.java

📁 J2ME MIDP 2.0 无线设备编程的一些源码
💻 JAVA
字号:
//CalendarEditForm.java
//实现添加或修改日程记录
package calendar;
import java.util.*;
import javax.microedition.lcdui.*;

public class CalendarEditForm extends Form
{
    public final static int ADD =0; //新增加日程
    public final static int EDIT =1; //修改原有日程
    protected TextField tbName, tbMemo;  //输入日程名称和说明
    protected DateField tmCal; //输入日程条目的时间
    protected ChoiceGroup listType; //选择日程类型
    protected int editType; //保存编辑类型
    protected ScheduleItem schItem; //保存被编辑的日程记录
    protected Date dateSaved; //保存日程记录的日期
    //构造器,创建日程记录
    public CalendarEditForm(Date date)
    {
        super("Add");
        dateSaved = date;
        schItem =null;
        initForm();
        editType = ADD;
        tmCal.setDate(new Date(0));
    }
    //构造器,编辑指定日程记录
    public CalendarEditForm(ScheduleItem schedule)
    {
        super("Edit");
        dateSaved =schedule.itemTime;
        initForm();
        editType = EDIT;
        tbName.setString(schedule.itemName);
        tmCal.setDate(schedule.getTime());
        tbMemo.setString(schedule.itemMemo);
        schItem = schedule;
        listType.setSelectedIndex(schedule.itemType,true);
    }
    //创建Form 内的Item对象
    protected void initForm()
    {
        tbName = new TextField("Name","",10,TextField.ANY);
        tbName.setLayout(Item.LAYOUT_NEWLINE_AFTER|Item.LAYOUT_EXPAND|Item.LAYOUT_2);
        tbMemo = new TextField("Memo","",60,TextField.ANY);
        tbMemo.setLayout(Item.LAYOUT_NEWLINE_AFTER|Item.LAYOUT_EXPAND|Item.LAYOUT_2);
        tmCal = new DateField("Time",DateField.TIME);
        tmCal.setLayout(Item.LAYOUT_NEWLINE_AFTER|Item.LAYOUT_EXPAND|Item.LAYOUT_2);
        listType = new ChoiceGroup("Type",Choice.POPUP);
        listType.setLayout(Item.LAYOUT_NEWLINE_AFTER|Item.LAYOUT_EXPAND|Item.LAYOUT_2);
        append(tbName);
        append(listType);
        append(tmCal);
        append(tbMemo);
        for(int i=0;i<6;i++) //添加日程类型到列表中
            listType.append(ScheduleItem.getTypeName(i), null);
        listType.setSelectedIndex(0,true);
    }    
    //得到编辑的类型
    public int getType()
    {
        return editType;
    }
    //得到被编辑或添加的日程记录
    public ScheduleItem getScheduleItem()
    {
        if(schItem == null)//如果是新添加日程,则创建新的日程记录对象
            schItem = new ScheduleItem();
        Date dateInput = tmCal.getDate();
        Calendar calTime = Calendar.getInstance();
        Calendar cal = Calendar.getInstance();
        calTime.setTime(dateInput);
        cal.setTime(dateSaved);
        calTime.set(Calendar.YEAR,cal.get(Calendar.YEAR));
        calTime.set(Calendar.MONTH,cal.get(Calendar.MONTH));
        calTime.set(Calendar.DAY_OF_MONTH,cal.get(Calendar.DAY_OF_MONTH));
        //设置日程记录的值
        schItem.set(tbName.getString(), listType.getSelectedIndex(), calTime.getTime(), tbMemo.getString());
        calTime=null;
        cal=null;
        return schItem;
    }
}

⌨️ 快捷键说明

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