📄 inputform.java
字号:
/**
* <p>Title: CowriePixie</p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2005</p>
* <p>Company: xidian</p>
* @author yangyong
* @version 1.0
*/
import java.io.ByteArrayOutputStream;
import java.io.DataOutputStream;
import java.util.Date;
import javax.microedition.lcdui.Alert;
import javax.microedition.lcdui.AlertType;
import javax.microedition.lcdui.ChoiceGroup;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.DateField;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.Item;
import javax.microedition.lcdui.ItemStateListener;
import javax.microedition.lcdui.TextField;
import javax.microedition.rms.RecordStore;
/*
* 创建日期 2005-9-23
*
* TODO 要更改此生成的文件的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
/**
* @author Administrator
*
* TODO 要更改此生成的类型注释的模板,请转至
* 窗口 - 首选项 - Java - 代码样式 - 代码模板
*/
//费用录入界面:
public class InputForm extends Form implements CommandListener, ItemStateListener {
private DateField datefield;
private ChoiceGroup feenamecg;
private ChoiceGroup subfeenamecg;
private ChoiceGroup wtypecg;
//private ChoiceGroup feecg;
private TextField fee;
private TextField jfee;
private TextField memo;
private String code;//费用类型
private String subcode;
private String memovalue;
private int feevalue;
private long date;
private Command save;
private Command back;
private Display dis;
private String subfeename;
private String feename;
public InputForm(Display display)
{
super("每日费用录入");
code = new String();
subcode = new String();
memovalue = new String();
subfeename = new String();
feename = new String();
dis = display;
datefield = new DateField("选择日期:", DateField.DATE);
append(datefield);
Date date = new Date();
datefield.setDate(date);
GetDate();
feenamecg = new ChoiceGroup("选择费用类别 :", ChoiceGroup.EXCLUSIVE );
for(int i = 0; i < Financing.feenamevector.size(); i++)
{
Fee_Type feetype = (Fee_Type)Financing.feenamevector.elementAt(i);
feenamecg.append(feetype.name, null);
}
append(feenamecg);
subfeenamecg = new ChoiceGroup("选择费用明细 :", ChoiceGroup.EXCLUSIVE );
append(subfeenamecg);
GetFeeCode();
GetSubFeeCode();
fee = new TextField("费用:(元)",null, 10, TextField.NUMERIC);//费用输入为10位数字
jfee = new TextField("费用:(角)","0",1, TextField.NUMERIC);
append(fee);
append(jfee);
wtypecg=new ChoiceGroup("选择入帐类型:",ChoiceGroup.EXCLUSIVE);
wtypecg.append("支出",null);
wtypecg.append("收入",null);
append(wtypecg);
memo = new TextField("备注 :", null, 20, TextField.ANY);//备注说明可以输入20个字符
append(memo);
back = new Command("返回", Command.BACK, 2);
addCommand(back);
save = new Command("保存", Command.OK, 2);
addCommand(save);
setCommandListener(this);
setItemStateListener(this);
}
public void commandAction(Command c, Displayable d)
{
if(c == back)
{
Main_Form mainform = new Main_Form(dis);
dis.setCurrent(mainform);
return;
}
if(c == save)
{
String temp0 = new String(fee.getString());
String temp1 = new String(jfee.getString());
if(fee.getString().length() == 0&&jfee.getString().length()==0)
{
try
{
Alert alert = new Alert("告警", " 请输入费用", Financing.alert, AlertType.ALARM);
alert.setTimeout(500);
dis.setCurrent(alert);
}
catch(Exception exception) { }
return;
}
int t1 = Integer.parseInt(temp1);
int t0 = Integer.parseInt(temp0);
feevalue=10*t0+t1;
System.out.println(feevalue);
if( wtypecg.getSelectedIndex()==1)
{
feevalue=-feevalue;
}
if(feevalue == 0)
{
Alert alert = new Alert("告警", " 请输入费用", Financing.alert, AlertType.ALARM);
alert.setTimeout(500);
dis.setCurrent(alert);
fee.setString("");
jfee.setString("0");
feevalue = 0;
} else
{
encode();
Alert alert = new Alert("提示", " 保存完毕", Financing.alert, AlertType.ALARM);
alert.setTimeout(500);
dis.setCurrent(alert);
fee.setString("");
jfee.setString("0");
feevalue = 0;
}
}
}
public void itemStateChanged(Item item)
{
if(item == feenamecg)
GetFeeCode();
if(item == subfeenamecg)
GetSubFeeCode();
if(item == datefield)
GetDate();
if(item==wtypecg)
// getfeetype();
if(item == memo)
memovalue = memo.getString();
}
public void encode()
{
byte result[] = null;
try
{
ByteArrayOutputStream bos = new ByteArrayOutputStream();
DataOutputStream dos = new DataOutputStream(bos);
dos.writeLong(date);
dos.writeUTF(code);
dos.writeUTF(subcode);
dos.writeInt(feevalue);
dos.writeUTF(memovalue);
result = bos.toByteArray();
dos.close();
bos.close();
}
catch(Exception ex)
{
return;
}
WriteDetail(result);
}
public void WriteDetail(byte result[])
{
String filename = new String("fee_detail");
RecordStore feedetaildb;
try
{
feedetaildb = RecordStore.openRecordStore(filename, true);
}
catch(Exception ex)
{
return;
}
try
{
feedetaildb.addRecord(result, 0, result.length);
}
catch(Exception ex)
{
return;
}
try
{
feedetaildb.closeRecordStore();
}
catch(Exception ex)
{
return;
}
}
public void GetDate()
{
date = datefield.getDate().getTime();
}
public void GetSubFeeCode()
{
subfeename = subfeenamecg.getString(subfeenamecg.getSelectedIndex());
int h = 0;
do
{
if(h >= Financing.subfeenamevector.size())
break;
Sub_Fee_Type subfeetype = (Sub_Fee_Type)Financing.subfeenamevector.elementAt(h);
if(code.equals(subfeetype.code) && subfeename.equals(subfeetype.name))
{
subcode = subfeetype.subcode;
break;
}
h++;
} while(true);
}
public void GetFeeCode()
{
feename = feenamecg.getString(feenamecg.getSelectedIndex());
int i = 0;
do
{
if(i >= Financing.feenamevector.size())
break;
Fee_Type feetype = (Fee_Type)Financing.feenamevector.elementAt(i);
if(feename.equals(feetype.name))
{
code = feetype.code;
break;
}
i++;
} while(true);
int m = subfeenamecg.size();
for(int d = 0; d < m; d++)
subfeenamecg.delete(0);
int count = 0;
for(int h = 0; h < Financing.subfeenamevector.size(); h++)
{
Sub_Fee_Type subfeetype = (Sub_Fee_Type)Financing.subfeenamevector.elementAt(h);
if(code.equals(subfeetype.code))
{
subfeenamecg.insert(count, subfeetype.name, null);
count++;
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -