📄 manageinforofworkerpanel.java
字号:
package employeemanagersystem;
import java.awt.*;
import javax.swing.*;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.tree.TreePath;
import java.util.Vector;
import javax.swing.event.TreeSelectionEvent;
import javax.swing.event.TreeSelectionListener;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.Rectangle;
/**
* <p>Title: </p>
*
* <p>Description: </p>
*
* <p>Copyright: Copyright (c) 2007</p>
*
* <p>Company: </p>
*
* @author not attributable
* @version 1.0
*/
public class ManageInforOfWorkerPanel
extends JPanel
{
//自定义的域变量
SQLClass mySQL = new SQLClass();
VectorVariable myVector = new VectorVariable();
DefaultMutableTreeNode rootNode = new DefaultMutableTreeNode("部门");
DefaultMutableTreeNode departNode = new DefaultMutableTreeNode();
DefaultMutableTreeNode employNode = new DefaultMutableTreeNode();
DefaultMutableTreeNode rootNodeTemp = new DefaultMutableTreeNode("部门");
DefaultMutableTreeNode departNodeTemp = new DefaultMutableTreeNode();
DefaultMutableTreeNode employNodeTemp = new DefaultMutableTreeNode();
JScrollPane employeeScrollPane = new JScrollPane();
JTree employeeTree = new JTree();
JLabel empIdLabel1 = new JLabel();
JLabel jobLabel1 = new JLabel();
JLabel degreeLabel1 = new JLabel();
JLabel jLabel4 = new JLabel();
JLabel exhibitionLabel1 = new JLabel();
JLabel isContiueLabel = new JLabel();
JTextField empIdTextField = new JTextField();
JTextField jobTextField = new JTextField();
JTextField degreeTextField = new JTextField();
JTextField exhibitionTextField = new JTextField();
JRadioButton continueRadioButton = new JRadioButton();
JRadioButton notContinueRadioButton = new JRadioButton();
JButton modifyButton = new JButton();
JButton deleteButton = new JButton();
JCheckBox isRemoveCheckBox = new JCheckBox();
JComboBox depComboBox1 = new JComboBox();
JComboBox jobComboBox1 = new JComboBox();
JComboBox degreeComboBox1 = new JComboBox();
JLabel passwordLabel1 = new JLabel();
JPasswordField PasswordField1 = new JPasswordField();
JButton updateButton = new JButton();
JCheckBox degreeChangeCheckBox = new JCheckBox();
ButtonGroup exhibitionButtonGroup1 = new ButtonGroup();
ButtonGroup isContinueButtonGroup = new ButtonGroup();
public ManageInforOfWorkerPanel()
{
try
{
jbInit();
}
catch (Exception exception)
{
exception.printStackTrace();
}
}
private void jbInit()
throws Exception
{
this.setLayout(null);
empIdLabel1.setText("编号:");
empIdLabel1.setBounds(new Rectangle(199, 2, 65, 27));
jobLabel1.setText("工种:");
jobLabel1.setBounds(new Rectangle(199, 55, 68, 24));
degreeLabel1.setText("学历:");
degreeLabel1.setBounds(new Rectangle(196, 157, 69, 27));
exhibitionLabel1.setText("工作表现:");
exhibitionLabel1.setBounds(new Rectangle(197, 219, 69, 25));
isContiueLabel.setText("合同到期,是否续约:");
isContiueLabel.setBounds(new Rectangle(199, 277, 135, 24));
empIdTextField.setVerifyInputWhenFocusTarget(false);
empIdTextField.setEditable(false);
empIdTextField.setBounds(new Rectangle(298, 7, 129, 23));
jobTextField.setEditable(false);
jobTextField.setBounds(new Rectangle(298, 54, 129, 25));
degreeTextField.setEditable(false);
degreeTextField.setBounds(new Rectangle(298, 157, 128, 25));
exhibitionTextField.setEditable(false);
exhibitionTextField.setBounds(new Rectangle(298, 221, 128, 24));
continueRadioButton.setBackground(SystemColor.control);
continueRadioButton.setEnabled(false);
continueRadioButton.setSelected(true);
continueRadioButton.setText("是");
continueRadioButton.setBounds(new Rectangle(329, 276, 45, 23));
notContinueRadioButton.setBackground(SystemColor.control);
notContinueRadioButton.setEnabled(false);
notContinueRadioButton.setText("否");
notContinueRadioButton.setBounds(new Rectangle(392, 276, 58, 23));
modifyButton.setBackground(UIManager.getColor(
"InternalFrame.inactiveTitleForeground"));
modifyButton.setBounds(new Rectangle(467, 321, 60, 23));
modifyButton.setText("编辑");
modifyButton.addActionListener(new
ManageInforOfWorkerPanel_modifyButton_actionAdapter(this));
deleteButton.setBounds(new Rectangle(421, 383, 114, 23));
deleteButton.setText("删除员工信息");
deleteButton.addActionListener(new
ManageInforOfWorkerPanel_deleteButton_actionAdapter(this));
isRemoveCheckBox.setBackground(UIManager.getColor("control"));
isRemoveCheckBox.setEnabled(false);
isRemoveCheckBox.setText("调至:");
isRemoveCheckBox.setBounds(new Rectangle(298, 111, 67, 23));
isRemoveCheckBox.addItemListener(new
ManageInforOfWorkerPanel_isRemoveCheckBox_itemAdapter(this));
depComboBox1.setEnabled(false);
depComboBox1.setBounds(new Rectangle(369, 109, 83, 26));
depComboBox1.addItemListener(new
ManageInforOfWorkerPanel_depComboBox1_itemAdapter(this));
this.initDepComboBox(myVector); //初始化部门列表
jobComboBox1.setEnabled(false);
jobComboBox1.setBounds(new Rectangle(474, 109, 81, 25));
jobComboBox1.addItemListener(new
ManageInforOfWorkerPanel_jobComboBox1_itemAdapter(this));
this.initJobComboBox(myVector); //初始化工种列表
degreeComboBox1.setEnabled(false);
degreeComboBox1.setBounds(new Rectangle(504, 158, 77, 23));
for (int i = 0; i < myVector.degreeValues.length; i++)
{
degreeComboBox1.addItem(myVector.degreeValues[i]);
}
passwordLabel1.setText("登录密码:");
passwordLabel1.setBounds(new Rectangle(200, 319, 65, 21));
PasswordField1.setEnabled(false);
PasswordField1.setBounds(new Rectangle(298, 322, 86, 24));
this.initEmployeeTree(myVector); //初始化树结构
updateButton.setBounds(new Rectangle(249, 383, 113, 23));
updateButton.setText("更新员工信息");
updateButton.addActionListener(new
ManageInforOfWorkerPanel_updateButton_actionAdapter(this));
degreeChangeCheckBox.setBackground(SystemColor.control);
degreeChangeCheckBox.setEnabled(false);
degreeChangeCheckBox.setText("升为:");
degreeChangeCheckBox.setBounds(new Rectangle(431, 159, 66, 20));
degreeChangeCheckBox.addItemListener(new
ManageInforOfWorkerPanel_degreeChangeCheckBox_itemAdapter(this));
employeeScrollPane.setBounds(new Rectangle(10, 10, 173, 379));
employeeTree.addTreeSelectionListener(new
ManageInforOfWorkerPanel_employeeTree_treeSelectionAdapter(this));
this.setBackground(SystemColor.control);
this.add(employeeScrollPane);
isContinueButtonGroup.add(continueRadioButton);
isContinueButtonGroup.add(notContinueRadioButton);
this.add(degreeLabel1);
this.add(jobLabel1);
this.add(empIdLabel1);
this.add(empIdTextField);
this.add(jobTextField);
this.add(isContiueLabel);
this.add(notContinueRadioButton);
this.add(degreeTextField);
this.add(depComboBox1);
this.add(isRemoveCheckBox);
this.add(jobComboBox1);
this.add(passwordLabel1);
this.add(PasswordField1);
this.add(modifyButton);
this.add(degreeChangeCheckBox);
this.add(degreeComboBox1);
this.add(continueRadioButton);
this.add(exhibitionTextField);
this.add(exhibitionLabel1);
this.add(deleteButton);
this.add(updateButton);
employeeScrollPane.getViewport().add(employeeTree);
}
private void jbInitTree()
throws Exception
{
VectorVariable tempVector = new VectorVariable();
this.initEmployeeTreeAfterChange(tempVector); //初始化树结构
employeeScrollPane.setBounds(new Rectangle(10, 10, 173, 379));
employeeScrollPane.getViewport().add(employeeTree);
this.add(employeeScrollPane);
employeeTree.addTreeSelectionListener(new
ManageInforOfWorkerPanel_employeeTree_treeSelectionAdapter(this));
}
public void initDepComboBox(VectorVariable vv)
{
for (int i = 0; i < vv.depIds.size(); i++)
{
depComboBox1.addItem(vv.depNames.elementAt(i).toString().trim());
}
depComboBox1.addItem("");
}
public void initJobComboBox(VectorVariable vv)
{
for (int i = 0; i < vv.jobIds.size(); i++)
{
jobComboBox1.addItem(vv.jobNames.elementAt(i).toString().trim());
}
jobComboBox1.addItem("");
}
public void initEmployeeTree(VectorVariable vv)
{
for (int i = 0; i < vv.depIds.size(); i++)
{
//定义临时变量
Vector tempIds = new Vector();
Vector tempNames = new Vector();
SQLClass mySQL = new SQLClass();
departNode = new DefaultMutableTreeNode(vv.depNames.elementAt(i));
mySQL.getEmployeeIdNameByDepId(vv.depIds.elementAt(i).toString().
trim(),
tempIds, tempNames);
//System.out.println(employeeNames);
rootNode.add(departNode);
for (int j = 0; j < tempIds.size(); j++)
{
employNode = new DefaultMutableTreeNode(tempNames.elementAt(
j));
departNode.add(employNode);
}
}
employeeTree = new JTree(rootNode);
}
public void initEmployeeTreeAfterChange(VectorVariable vv)
{
for (int i = 0; i < vv.depIds.size(); i++)
{
//定义临时变量
Vector tempIds = new Vector();
Vector tempNames = new Vector();
SQLClass mySQL = new SQLClass();
departNodeTemp = new DefaultMutableTreeNode(vv.depNames.elementAt(i));
mySQL.getEmployeeIdNameByDepId(vv.depIds.elementAt(i).toString().
trim(),
tempIds, tempNames);
//System.out.println(employeeNames);
rootNodeTemp.add(departNodeTemp);
for (int j = 0; j < tempIds.size(); j++)
{
employNodeTemp = new DefaultMutableTreeNode(tempNames.elementAt(
j));
departNodeTemp.add(employNodeTemp);
}
}
employeeTree = new JTree(rootNodeTemp);
}
public void employeeTree_valueChanged(TreeSelectionEvent e)
{
Vector employeeInfor = new Vector();
try
{
TreePath selectPath = employeeTree.getSelectionPath();
String employId = "";
//System.out.println(selectPath);
int i = myVector.employeeNames.indexOf(selectPath.getLastPathComponent().
toString().trim());
employId = myVector.employeeIds.elementAt(i).toString().trim();
//System.out.println(employId);
mySQL.getEmployeeInforByEmpId(employId, employeeInfor);
//System.out.println(employeeInfor);
this.empIdTextField.setText(employeeInfor.elementAt(0).toString().
trim());
this.jobTextField.setText(employeeInfor.elementAt(1).toString().
trim());
this.degreeTextField.setText(employeeInfor.elementAt(2).toString().
trim());
String exhibiTemp = employeeInfor.elementAt(3).toString().trim();
if (exhibiTemp.equals("0"))
{
this.exhibitionTextField.setText("一般");
}
else if (exhibiTemp.equals("1"))
{
this.exhibitionTextField.setText("优秀");
}
else
{
this.exhibitionTextField.setText("差劲");
}
int isContinue = 0;
isContinue = Integer.parseInt(employeeInfor.elementAt(4).toString().
trim());
//System.out.println(isContinue);
if (isContinue >= 0)
{
continueRadioButton.setEnabled(true);
notContinueRadioButton.setEnabled(true);
}
else
{
continueRadioButton.setEnabled(false);
notContinueRadioButton.setEnabled(false);
}
}
catch (ArrayIndexOutOfBoundsException aiobe)
{
JOptionPane.showMessageDialog(this, "选择了部门或根节点,如要查看员工信息请选对应的员工姓名!",
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -