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

📄 inputform.java

📁 手机理财软件
💻 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 + -