展开全部
package com.dhee.the_first_group.Finance;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.StringTokenizer;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JSplitPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.JTree;
import javax.swing.event.TreeSelectionEvent;
import javax.swing.event.TreeSelectionListener;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.TreePath;
public class Finance extends JFrame implements TreeSelectionListener,ActionListener, ItemListener{
JTable table;
Object obj[][];
Object name[] = { "员工号", "姓名", "性别", "年龄", "所在部门62616964757a686964616fe78988e69d8331333332626631","家庭住址" };
JButton button;
JComboBox combobox;
static int i = 0;
static int index = 0;// 第几行;
static String s = null;
static String str[] = new String[500];
JPanel jp = new JPanel();
JPanel jp1 = new JPanel();
JPanel jp2 = new JPanel();
JPanel jp3 = new JPanel();
JTable jta=new JTable();
JButton jb=new JButton();
JButton jb1=new JButton();
JLabel jl=new JLabel("员工号");
JLabel jl1=new JLabel("姓名");
JLabel jl2=new JLabel("性别");
JLabel jl3=new JLabel("年龄");
JLabel jl4=new JLabel("所在部门");
JLabel jl5=new JLabel("家庭住址");
JTextField jtf=new JTextField(10);
JTextField jtf1=new JTextField(10);
JTextField jtf2=new JTextField(10);
JTextField jtf3=new JTextField(10);
JTextField jtf4=new JTextField(10);
JTextField jtf5=new JTextField(20);
DefaultMutableTreeNode root = new DefaultMutableTreeNode("财务部门管理 ");// 创建树的根结点
JTree jt=new JTree(root);
DefaultMutableTreeNode personnelNode = new DefaultMutableTreeNode("工资 ");// 创建树的一级子结点
DefaultMutableTreeNode prom=new DefaultMutableTreeNode("1");
DefaultMutableTreeNode prom1=new DefaultMutableTreeNode("2");
DefaultMutableTreeNode prom2=new DefaultMutableTreeNode("3");
DefaultMutableTreeNode prom3=new DefaultMutableTreeNode("4");
DefaultMutableTreeNode treatmentNode = new DefaultMutableTreeNode("奖金 ");
DefaultMutableTreeNode prom21=new DefaultMutableTreeNode("1");
DefaultMutableTreeNode prom22=new DefaultMutableTreeNode("2");
DefaultMutableTreeNode prom23=new DefaultMutableTreeNode("3");
DefaultMutableTreeNode systemNode = new DefaultMutableTreeNode("福利 ");
DefaultMutableTreeNode prom31=new DefaultMutableTreeNode("1");
DefaultMutableTreeNode prom32=new DefaultMutableTreeNode("2");
DefaultMutableTreeNode prom33=new DefaultMutableTreeNode("3");
Finance() {
setDefaultCloseOperation(EXIT_ON_CLOSE);
personnelNode.add(prom);// 创建树的叶子结点并添加到一级子结点
personnelNode.add(prom1);
personnelNode.add(prom2);
personnelNode.add(prom3);
root.add(personnelNode);// 向根结点添加一级子结点
treatmentNode.add(prom21);
treatmentNode.add(prom22);
treatmentNode.add(prom23);
root.add(treatmentNode);
systemNode.add(prom31);
systemNode.add(prom32);
systemNode.add(prom33);
root.add(systemNode);
File f = new File("1.txt");
FileReader fr;
try {
fr = new FileReader(f);
BufferedReader br = new BufferedReader(fr);// 按行读
while ((s = br.readLine()) != null) {
index++;
StringTokenizer tokenizer = new StringTokenizer(s, ";");
while (tokenizer.hasMoreTokens()) {
str[i] = tokenizer.nextToken();
i++;
}
}
br.close();
fr.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} // 读文件
catch (IOException e) {
e.printStackTrace();
}
obj = new Object[index][6];
for (int a = 0; a < index; a++) {
for (int b = 0; b < 6; b++) {
obj[a][b] = str[(a * 6) + b];
}
table = new JTable(obj, name);
//combobox = new JComboBox();
//combobox.addItem("性别");
//combobox.addItem("年龄");
//combobox.addItemListener(this);
button = new JButton("保存");
button.addActionListener(this);
//getContentPane().add(new JScrollPane(table), BorderLayout.CENTER);
//con.add(combobox,BorderLayout.NORTH);
//con.add(new JLabel("修改或录入数据后,需按Enter键确认!"), BorderLayout.SOUTH);
//con.add(button, BorderLayout.SOUTH);
}
jp1.add(new JScrollPane(table));
jp1.add(button);
jt.addTreeSelectionListener(this);
add(jp);
jp2.add(jl);
jp2.add(jtf);
jp2.add(jl1);
jp2.add(jtf1);
jp2.add(jl2);
jp2.add(jtf2);
jp2.add(jl3);
jp2.add(jtf3);
jp2.add(jl4);
jp2.add(jtf4);
jp2.add(jl5);
jp2.add(jtf5);
//jt.setOpaque(true);
jt.setBackground(Color.WHITE);// 设置树的背景色
// jt.setRootVisible(false);// 设置不显示树的根结点,默认为显示,即true
jt.setRowHeight(24);// 设置各结点的高度为27像素
jt.setFont(new Font("宋体", Font.BOLD, 14));// 设置结点的字体样式
JSplitPane js=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,jt,jp);
js.setOneTouchExpandable(true);
js.setMinimumSize(new Dimension(100,50));
getContentPane().add(js);
setSize(824, 568);
setLocation(50, 50);
setTitle("财务部管理系统");
setVisible(true);
}
public void copy() throws IOException {
InputStreamReader isr = new FileReader("2.txt");
OutputStreamWriter osw = new FileWriter("1.txt");
int c;
while ((c = isr.read()) != -1) {
osw.write(c);
System.out.print((char) c);
}
osw.flush();
osw.close();
isr.close();
}
void test(int o) {
File f = new File("2.txt");
try {
OutputStreamWriter osw = new FileWriter(f);
for (int a = 0; a < i; a++) {
if (a % 6 == 5) {
osw.write(str[a] + '\n');
} else {
osw.write(str[a] + ";");
}
}
osw.flush();
osw.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
if (1 == 1) {
try {
copy();
} catch (IOException e) {
e.printStackTrace();
}
}
}
public static void main(String[] args) {
new Finance();
}
@Override
public void valueChanged(TreeSelectionEvent e) {
TreePath[] paths = e.getPaths();
for (int i=0; i
// 如果处于选择状态
if (e.isAddedPath(i)) {
// 将路径转化为节点数组
Object[] nodes=paths[i].getPath();
// 得到最后一个节点,即选择的节点
DefaultMutableTreeNode node=(DefaultMutableTreeNode)nodes[nodes.length-1];
if(node.equals(prom))
{
jp.add(jp1);
}
if(node.equals(prom1))
{
jp.add(jp2);
}
}
}
}
@Override
public void actionPerformed(ActionEvent e) {
for (int a = 0; a < index; a++) {
for (int b = 0; b < 6; b++) {
str[(a * 6) + b] = (String) obj[a][b].toString();
System.out.print(" " + str[(a * 6) + b]);
table.repaint();
}
}
if (1 == 1) {
test(i);
}
}
@Override
public void itemStateChanged(ItemEvent e) {
// TODO Auto-generated method stub
}
}
已赞过
已踩过<
你对这个回答的评价是?
评论
收起