📄 util.java
字号:
/*
* Util.java
*
* Created on 2007年3月11日, 下午3:50
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
package net.bccn.account.util;
import java.util.TimeZone;
import javax.microedition.lcdui.AlertType;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Item;
import javax.microedition.rms.RecordEnumeration;
import javax.microedition.rms.RecordStore;
import net.bccn.account.Main;
import net.bccn.account.ui.About;
import net.bccn.account.ui.AddAccount;
import net.bccn.account.ui.AddNote;
import net.bccn.account.ui.Help;
import net.bccn.account.ui.INFO;
import net.bccn.account.ui.MainForm;
import net.bccn.account.ui.SetForm;
import net.bccn.account.ui.ViewAccount;
import net.bccn.account.ui.ViewAccountForm;
import net.bccn.account.ui.ViewNote;
import net.bccn.account.ui.ViewNoteForm;
/**
*
* @author hadeslee
*/
public class Util {
private static Display dis;
public static final int ADD_ACCOUNT=1;
public static final int MAIN_FORM=2;
public static final int VIEW_ACCOUNT_FORM=4;
public static final int SET_FORM=5;
public static final int HELP=6;
public static final int ABOUT=7;
public static final int VIEW_ACCOUNT=8;
public static final int ADD_NOTE=9;
public static final int VIEW_NOTE=10;
public static final int VIEW_NOTE_FORM=11;
public static int current=MAIN_FORM;//代表当前窗口
private static String RECORD_NAME="hadeslee";//表示记录仓库的名字
private static RecordStore rs;//一个一直开着的记录仓库
public static Main main;//主MIDlet
public static final int OFF_SET;
static{
TimeZone tz=TimeZone.getDefault();
OFF_SET=tz.getRawOffset();
}
/** Creates a new instance of Util */
private Util() {
}
public static void openRecordStore(){
if(rs!=null){
Util.showINFO(AlertType.WARNING,"已经打开过记录仓库!!");
return;
}
try{
rs=RecordStore.openRecordStore(RECORD_NAME,true);
} catch(Exception exe){
Util.showINFO(AlertType.ERROR,"初始化程序出错,请重新安装程序或与作者联系!!\n以" +
"下是错误信息:\n"+exe.getMessage());
}
}
//保存记录
public static boolean saveRecord(Record rec){
try{
byte[] data=rec.toBytes();
int i=rs.addRecord(data,0,data.length);
rec.setID(i);
} catch(Exception exe){
Util.showINFO(AlertType.ERROR,"数据保存时出现异常!以下是错误信息:\n"+exe.getMessage());
return false;
}
return true;
}
//更新记录
public static boolean updateRecord(Record rec){
try {
byte[] data=rec.toBytes();
rs.setRecord(rec.getID(),data,0,data.length);
} catch (Exception e) {
return false;
}
return true;
}
//删除记录
public static boolean deleteRecord(Record rec){
try {
rs.deleteRecord(rec.getID());
} catch (Exception e) {
return false;
}
return true;
}
//根据提供的样本得到符合要求的记录
public static Record[] getAllRecords(Record sample){
try{
RecordEnumeration re=rs.enumerateRecords(sample,sample,false);
Record[] recs=new Record[re.numRecords()];
int index=0;
while(re.hasNextElement()){
Record ac=sample.getEmptyRecord();
ac.setID(re.nextRecordId());
ac.fromBytes(rs.getRecord(ac.getID()));
recs[index]=ac;
index++;
}
re.destroy();//调用destroy,释放其资源
return recs;
} catch(Exception exe){
exe.printStackTrace();
return null;
}
}
public static void setDisplay(Display diss){
dis=diss;
}
public static void showINFO(AlertType at,String s){
dis.setCurrent(INFO.getInstance(at,s));
}
public static void showINFO(AlertType at,String s,Displayable next){
dis.setCurrent(INFO.getInstance(at,s),next);
}
public static void moveTo(Displayable diss){
dis.setCurrent(diss);
}
public static void moveTo(Item item){
dis.setCurrentItem(item);
}
public static void changeTo(int who){
current=who;
switch(who){
case ADD_ACCOUNT:
dis.setCurrent(AddAccount.getInstance());
break;
case MAIN_FORM:
dis.setCurrent(MainForm.getInstance());
break;
case VIEW_ACCOUNT_FORM:
dis.setCurrent(ViewAccountForm.getInstance());
break;
case SET_FORM:
dis.setCurrent(SetForm.getInstance());
break;
case VIEW_ACCOUNT:
if(ViewAccount.getInstance()!=null)
dis.setCurrent(ViewAccount.getInstance());
break;
case HELP:
dis.setCurrent(Help.getInstance());
break;
case ABOUT:
dis.setCurrent(About.getIntstance());
break;
case ADD_NOTE:
dis.setCurrent(AddNote.getInstance());
break;
case VIEW_NOTE_FORM:
dis.setCurrent(ViewNoteForm.getInstance());
break;
case VIEW_NOTE:
dis.setCurrent(ViewNote.getInstance());
break;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -