📄 dept.java
字号:
package UI;
import java.util.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import java.sql.*;
import DB.*;
public class Dept extends JPanel
implements ListSelectionListener,ActionListener
{
private JLabel jName = new JLabel("部门名称");
private JLabel jTeamLeader = new JLabel("部门经理");
private JLabel jDeptFuc = new JLabel("部门职能");
public JList list;
public DefaultListModel listModel = new DefaultListModel();
public JButton insert;
public JButton del;
public JButton modify;
public JButton save;
public JTextField name;
public JTextField teamLeader;
public JTextField deptFuc;
DB db;
Statement stmt;
ResultSet rs;
String sql1 = "select * from department;";
Vector vDeptName = new Vector();
Vector vDeptLeader = new Vector();
Vector vDeptFunc = new Vector();
public Dept()
{
try{
db = new DB();
rs = db.search(sql1);
while(rs.next())
{
String sDeptName = rs.getString("deptName");
vDeptName.add(sDeptName);
vDeptLeader.add(rs.getString("leaderName"));
vDeptFunc.add(rs.getString("deptFunc"));
listModel.addElement(sDeptName);
}
}
catch(Exception e)
{
e.printStackTrace();
}
this.setLayout(null);
this.setSize(800,600);
list = new JList(listModel);
list.addListSelectionListener(this);
JScrollPane listScrollPane = new JScrollPane(list);
listScrollPane.setBounds(50,50,200,400);
insert = new JButton("添加"); insert.setBounds(50,500,70,30);
insert.addActionListener(this);
del = new JButton("删除"); del.setBounds(150,500,70,30);
del.addActionListener(this);
modify = new JButton("修改"); modify.setBounds(250,500,70,30);
modify.addActionListener(this);
save = new JButton("保存"); save.setBounds(350,500,70,30);
save.addActionListener(this);
save.setEnabled(false);
jName.setBounds(300,100,100,40);
jTeamLeader.setBounds(300,200,100,40);
jDeptFuc.setBounds(300,300,100,40);
name = new JTextField(); name.setBounds(400,100,250,40);name.setEditable(false);
teamLeader = new JTextField(); teamLeader.setBounds(400,200,250,40);
teamLeader.setEditable(false);
deptFuc = new JTextField(); deptFuc.setBounds(400,300,250,40);
deptFuc.setEditable(false);
this.add(listScrollPane);
this.add(jName);
this.add(jTeamLeader);
this.add(jDeptFuc);
this.add(insert);
this.add(del);
this.add(modify);
this.add(save);
this.add(name);
this.add(teamLeader);
this.add(deptFuc);
}
public void valueChanged(ListSelectionEvent e) {
String sName = (String)list.getSelectedValue();
name.setText(sName);
String sqlSelect = "select leaderName,deptFunc from department " +
"where deptName='"+sName+"';";
String sDeptLeader = null;
String sDeptFunc = null;
try {
rs.close();
rs = db.search(sqlSelect);
while(rs.next())
{
sDeptLeader = rs.getString("leaderName");
sDeptFunc = rs.getString("deptFunc");
}
teamLeader.setText(sDeptLeader);
deptFuc.setText(sDeptFunc);
} catch (SQLException e1) {
e1.printStackTrace();
}
//teamLeader.setText((String)vDeptLeader.elementAt(index));
//deptFuc.setText((String)vDeptFunc.elementAt(index));
}
/* (non-Javadoc)
* @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)
*/
/* (non-Javadoc)
* @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent)
*/
public void actionPerformed(ActionEvent e)
{
if(e.getSource() == insert)
{
//name.setText("");teamLeader.setText("");deptFuc.setText("");
//insert.setEnabled(false);del.setEnabled(false);
//modify.setEnabled(false);save.setEnabled(true);
int index = listModel.getSize();
new InsertDeptFrame(list,index+1);
}
if(e.getSource() == del)
{
String temp = (String) list.getSelectedValue();
int index = list.getSelectedIndex();
//int i = vDeptName.indexOf(temp);
//vDeptName.remove(i);
//vDeptLeader.remove(i);
//vDeptFunc.remove(i);
String sqlDel = "delete from department where deptName='"+temp+"';";
db.update(sqlDel);
listModel.removeElementAt(index);
int size = listModel.getSize();
if(size == 0)
del.setEnabled(false);
else{
if (index == listModel.getSize()) {
//移除选项
index--;
}
}
list.setSelectedIndex(index);
list.ensureIndexIsVisible(index);
}
if(e.getSource() == modify)
{
//String select = (String) list.getSelectedValue();
name.setEditable(true);
teamLeader.setEditable(true);
deptFuc.setEditable(true);
save.setEnabled(true);
modify.setEnabled(false);
insert.setEnabled(false);
del.setEnabled(false);
}
if(e.getSource() == save)
{
String select = (String) list.getSelectedValue();
int index = list.getSelectedIndex();
String sName = name.getText();
String sLeader = teamLeader.getText();
String sDeptFuc = deptFuc.getText();
String sqlSave = "update department set deptName='"+ sName+"'," +
"leaderName='"+sLeader+"',deptFunc='"+sDeptFuc+"'" +
"where deptName='"+select+"'";
db.update(sqlSave);
listModel.set(index,sName);
name.setEditable(false);
teamLeader.setEditable(false);
deptFuc.setEditable(false);
save.setEnabled(false);
modify.setEnabled(true);
insert.setEnabled(true);
del.setEnabled(true);
}
}
public static void main(String args[])
{
JFrame f = new JFrame();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.add(new Dept());
f.setSize(800,600);
f.setVisible(true);
}
};
/*
class Insert implements ActionListener
{
Dept panel;
public Insert(Panel p)
{
panel = (Dept)p;
}
public void actionPerformed(ActionEvent e)
{
String s = "";
panel.name.setText(s);
}
};*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -