文件大小:44.63 KB
文件类型:zip
发布时间:2013-04-15 22:57:02
需资源分:2
下载次数:16
Tag:管理系统
::资源简介::
个人帐本管理系统
课题内容和要求
个人帐本管理系统,主要负责对个人的帐单的增加、修改、删除、查询、结算等管理工作。本课题以学生管理系统模块原型参照,对个人帐单数据进行记录、排序、查找、计算、显示等操作。通过此可以,熟练掌握文件读写、函数调用、界面化等知识,以及查找、排序典型算法的设计与应用。
需求分析
主窗口:提供账单号、收支项名称、收支类型、收支金额、日期和备注的输入窗口,并且提供录入、查询、修改、删除、显示、统计的功能按钮。
录入功能:记录个人帐务明细数据,包括账单号、收支项名称、收支类型、收支金额、日期和备注。
查询功能:查找帐务数据(可按序号、日期(年、月、日)、名称、金额等查找)。
修改功能:修改帐务明细条目(先查找,再修改。若查找出多个条目,则进一步提示用户选择条目的序号,再修改)。
删除功能:删除帐务明细条目(先查找,再修改。若查找出多个条目,则进一步提示用户选择条目的序号,再修改)。
显示功能:经过排序后显示账务明细条目。
统计功能:按日期筛选后,计算结余总金额(收入-支出)
三、概要设计
1)主要结构体:
public class PersonManager extends JFrame{
public int k11;
JLabel lb=new JLabel("录入请先输入记录,查询、删除请先输入账单号、收支名称、日期,修改是对查询" +
"内容改后的保存!");
JTextField 账单号,收支项名称,收支金额,日期,备注;
JRadioButton 收入,支出;
ButtonGroup group=null;
JButton 录入,查询,删除,修改,显示,统计;
JPanel p1,p2,p3,p4,p5,p6,pv,ph;
Person 用户=null;
Hashtable 用户散列表=null;
File file=null;
FileInputStream inOne=null;
ObjectInputStream inTwo=null;
FileOutputStream outOne=null;
ObjectOutputStream outTwo=null;
public PersonManager(){
super("用户账务管理系统");
账单号=new JTextField(10);
收支项名称=new JTextField(10);
收支金额=new JTextField(10);
日期=new JTextField(10);
备注=new JTextField(10);
group=new ButtonGroup();
收入=new JRadioButton("收入",true);
支出=new JRadioButton("支出",false);
group.add(收入);
group.add(支出);
录入=new JButton("录入");
查询=new JButton("查询");
删除=new JButton("删除");
修改=new JButton("修改");
显示=new JButton("显示");
统计=new JButton("统计");
录入.addActionListener(new InputAct());
查询.addActionListener(new InquestAct());
修改.addActionListener(new ModifyAct());
删除.addActionListener(new DeleteAct());
显示.addActionListener(new ShowAct1());
统计.addActionListener(new TotallAct12());
修改.setEnabled(false);
p1=new JPanel();
p1.add(new JLabel(" 输入账单号:",JLabel.CENTER));
p1.add(账单号);
p2=new JPanel();
p2.add(new JLabel("收支项名称:",JLabel.CENTER));
p2.add(收支项名称);
p3=new JPanel();
p3.add(new JLabel("收支类型:",JLabel.CENTER));
p3.add(收入);
p3.add(支出);
p4=new JPanel();
p4.add(new JLabel("收支金额(代入符号):",JLabel.CENTER));
p4.add(收支金额);
p5=new JPanel();
p5.add(new JLabel("日期(8位年月日):",JLabel.CENTER));
p5.add(日期);
p6=new JPanel();
p6.add(new JLabel("备注:",JLabel.CENTER));
p6.add(备注);
pv=new JPanel();
pv.setLayout(new GridLayout(6,1));
pv.add(p1);
pv.add(p2);
pv.add(p3);
pv.add(p4);
pv.add(p5);
pv.add(p6);
ph=new JPanel();
ph.add(录入);
ph.add(查询);
ph.add(修改);
ph.add(删除);
ph.add(显示);
ph.add(统计);
file=new File("用户信息.txt");
用户散列表=new Hashtable( );
if(!file.exists()){
try{
FileOutputStream out=new FileOutputStream(file);
ObjectOutputStream objectOut=new ObjectOutputStream(out);
objectOut.writeObject(用户散列表);
objectOut.close();
out.close();
}
catch(IOException e){}
}
Container con=getContentPane();
con.setLayout(new BorderLayout());
con.add(lb, BorderLayout.NORTH);
con.add(pv, BorderLayout.CENTER);
con.add(ph, BorderLayout.SOUTH);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setBounds(100,150,600,400);
setVisible(true);
}
::下载地址::
BCCN本地下载