📄 addfirend02.java
字号:
package flow;
import java.io.ByteArrayOutputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import javax.microedition.lcdui.Alert;
import javax.microedition.lcdui.AlertType;
import javax.microedition.lcdui.Choice;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.Gauge;
import javax.microedition.lcdui.List;
import javax.microedition.lcdui.TextField;
import javax.microedition.rms.RecordEnumeration;
import javax.microedition.rms.RecordFilter;
import javax.microedition.rms.RecordStore;
import javax.microedition.rms.RecordStoreException;
import javax.microedition.rms.RecordStoreFullException;
import javax.microedition.rms.RecordStoreNotFoundException;
import javax.microedition.rms.RecordStoreNotOpenException;
public class AddFirend02 extends Form implements CommandListener {
private TextField namefield, tel, phone, email;
private List main;
private Display display;
private RecordStore recordStore;
private String name;
private String mobile;
private String phone02;
private String email02;
Command saveCmd = new Command("存储", Command.ITEM, 1);
Command backCmd = new Command("返回", Command.BACK, 5);
AddFirend02(Display display2, List main2) {// 这里是传入上面的两个参数;
super("添加联系人");
this.display = display2;// 还需将这两个参数传进来,否则无法完成返回的操作
this.main = main2;
namefield = new TextField("姓名", "", 20, TextField.INITIAL_CAPS_WORD);// 有四个数据,前两个为字符串,第3个为字数,第4个为TextField.一个常量,ANY是任意的意思;
tel = new TextField("移动电话", "", 20, TextField.PHONENUMBER);
phone = new TextField("固定电话", "", 20, TextField.PHONENUMBER);
email = new TextField("电子邮件", "", 20, TextField.EMAILADDR);
addCommand(saveCmd);
setCommandListener(this);
addCommand(backCmd);
append(namefield);
append(tel);
append(phone);
append(email);
}
public void commandAction(Command c, Displayable d) {
if (c == backCmd) {
display.setCurrent(main);
} else if (c == saveCmd) {
name = namefield.getString();
mobile = tel.getString();
phone02 = phone.getString();
email02 = email.getString();
if (name.equals("")) {
Alert alert = new Alert("输入的信息不能为空");
display.setCurrent(alert);
} else {
Alert alert = new Alert("储存成功");
display.setCurrent(alert);
saveInfo();
}
}
}
private void saveInfo() {
byte[] data = null;
Account ra = new Account(name, mobile, phone02, email02);
try {
recordStore = RecordStore.openRecordStore("tel", true);
} catch (RecordStoreFullException e) {
e.printStackTrace();
} catch (RecordStoreNotFoundException e) {
e.printStackTrace();
} catch (RecordStoreException e) {
e.printStackTrace();
}
try {
data = ra.encode();// 这里的encode是在写入数据,上面四个就是;
recordStore.addRecord(data, 0, data.length);
append(name);// 因为本身该类是Form类,故前面的form可省略,且无需在构造函数前声明Form
append(mobile);
append(phone02);
append(email02);
} catch (RecordStoreNotOpenException e) {
e.printStackTrace();
} catch (RecordStoreFullException e) {
e.printStackTrace();
} catch (RecordStoreException e) {
e.printStackTrace();
}
/*
* ByteArrayOutputStream bos = new ByteArrayOutputStream();
* DataOutputStream dos = new DataOutputStream(bos); try {
* dos.writeUTF(name); dos.writeUTF(mobile); dos.writeUTF(phone02);
* dos.writeUTF(email02); data = bos.toByteArray(); dos.close();
* bos.close();
* } catch (IOException e) { e.printStackTrace(); }
*/// 用Account re = new Account(name, mobile, phone02, email02);来替换
// 上面被注释的部分
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -