📄 hiretypesetpanel.java
字号:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
public class HireTypeSetPanel extends JPanel
{
private JLabel title;
private final Font font = new Font("华文新魏", Font.PLAIN, 20);
private JPanel centerPanel;
private JTextField foregift, hire, canHireNumber;
private JButton addButton, changeButton, cancelButton;
private JTable table;
private String query = "select hireTypeID 编号, foregift 押金, hire 租金, canHireNumber 可租碟片数 from hireTypes";
private String hireTypeID;
public HireTypeSetPanel()
{
super();
setLayout(new BorderLayout());
title = new JLabel("出租类别设置", JLabel.CENTER);
title.setFont(font);
add(title, BorderLayout.NORTH);
centerPanel = new JPanel();
centerPanel.setLayout(new GridLayout(1, 9, 5, 5));
title = new JLabel("押金:", JLabel.CENTER);
centerPanel.add(title);
foregift = new JTextField();
foregift.setEditable(false);
centerPanel.add(foregift);
title = new JLabel("租金:", JLabel.CENTER);
centerPanel.add(title);
hire = new JTextField();
hire.setEditable(false);
centerPanel.add(hire);
title = new JLabel("可租碟数:", JLabel.CENTER);
centerPanel.add(title);
canHireNumber = new JTextField();
canHireNumber.setEditable(false);
centerPanel.add(canHireNumber);
addButton = new JButton("添加");
addButton.addActionListener(
new ActionListener()
{
public void actionPerformed(ActionEvent event)
{
if(event.getActionCommand().equals("添加"))
{
foregift.setText("");
foregift.setEditable(true);
hire.setText("");
hire.setEditable(true);
canHireNumber.setText("");
canHireNumber.setEditable(true);
addButton.setText("确定");
changeButton.setEnabled(false);
cancelButton.setEnabled(true);
table.setCellSelectionEnabled(false);
}
else
{
if(foregift.getText().equals("") || hire.getText().equals("")
|| canHireNumber.getText().equals(""))
{
JOptionPane.showMessageDialog(HireTypeSetPanel.this, "请输入完整的信息!");
}
else
{
String exe = "insert into hireTypes values('" + FilmHireSystem.tableModel.adminID
+ "', " + foregift.getText()
+ ", " + hire.getText()
+ ", '" + canHireNumber.getText()
+ "')";
try
{
FilmHireSystem.tableModel.setExecute(exe, query);
}
catch(SQLException sql)
{
JOptionPane.showMessageDialog(null, sql.getMessage(),
"数据库查询错误", JOptionPane.ERROR_MESSAGE);
System.err.println(sql.getMessage());
}
query();
foregift.setEditable(false);
hire.setEditable(false);
canHireNumber.setEditable(false);
addButton.setText("添加");
changeButton.setEnabled(true);
cancelButton.setEnabled(false);
table.setRowSelectionAllowed(true);
int i = table.getRowCount() - 1;
table.setRowSelectionInterval(i, i);
showInfo(i);
}
}
}
}
);
centerPanel.add(addButton);
changeButton = new JButton("修改");
changeButton.addActionListener(
new ActionListener()
{
public void actionPerformed(ActionEvent event)
{
if(event.getActionCommand().equals("修改"))
{
hireTypeID = table.getValueAt(table.getSelectedRow(), 0).toString();
foregift.setEditable(true);
hire.setEditable(true);
canHireNumber.setEditable(true);
addButton.setEnabled(false);
changeButton.setText("确定");
cancelButton.setEnabled(true);
table.setCellSelectionEnabled(false);
}
else
{
if(foregift.getText().equals("") || hire.getText().equals("")
|| canHireNumber.getText().equals(""))
{
JOptionPane.showMessageDialog(HireTypeSetPanel.this, "请输入完整的信息!");
}
else
{
String exe = "update hireTypes set adminID = '" + FilmHireSystem.tableModel.adminID
+ "', foregift = " + foregift.getText()
+ ", hire = " + hire.getText()
+ ", canHireNumber = '" + canHireNumber.getText()
+ "' where hireTypeID = '" + hireTypeID + "'";
try
{
FilmHireSystem.tableModel.setExecute(exe, query);
}
catch(SQLException sql)
{
JOptionPane.showMessageDialog(null, sql.getMessage(),
"数据库查询错误", JOptionPane.ERROR_MESSAGE);
System.err.println(sql.getMessage());
}
query();
foregift.setEditable(false);
hire.setEditable(false);
canHireNumber.setEditable(false);
addButton.setEnabled(true);
changeButton.setText("修改");
cancelButton.setEnabled(false);
table.setRowSelectionAllowed(true);
}
}
}
}
);
centerPanel.add(changeButton);
cancelButton = new JButton("取消");
cancelButton.setEnabled(false);
cancelButton.addActionListener(
new ActionListener()
{
public void actionPerformed(ActionEvent event)
{
foregift.setEditable(false);
hire.setEditable(false);
canHireNumber.setEditable(false);
addButton.setText("添加");
addButton.setEnabled(true);
changeButton.setText("修改");
changeButton.setEnabled(true);
cancelButton.setEnabled(false);
table.setRowSelectionAllowed(true);
showInfo(table.getSelectedRow());
}
}
);
centerPanel.add(cancelButton);
add(centerPanel, BorderLayout.CENTER);
query();
table = new JTable(FilmHireSystem.tableModel);
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
table.getTableHeader().setReorderingAllowed(false);
table.addMouseListener(
new MouseAdapter()
{
public void mouseReleased(MouseEvent event)
{
if(table.getRowSelectionAllowed())
{
showInfo(table.getSelectedRow());
}
}
}
);
if(table.getRowCount() == 0) changeButton.setEnabled(false);
else
{
table.setRowSelectionInterval(0, 0);
showInfo(0);
}
add(new JScrollPane(table), BorderLayout.SOUTH);
}
public void showInfo(int index)
{
foregift.setText(table.getValueAt(index, 1).toString());
hire.setText(table.getValueAt(index, 2).toString());
canHireNumber.setText(table.getValueAt(index, 3).toString());
}
public void query()
{
try
{
FilmHireSystem.tableModel.setQuery(query);
}
catch(Exception exception)
{
System.err.println("数据库查询错误:" + exception.getMessage());
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -