?? booktypemodianddeliframe.java
字號:
package com.lishan.iframe;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.List;
import java.util.Map;
import javax.swing.DefaultComboBoxModel;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JInternalFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.table.DefaultTableModel;
import com.lishan.JComPz.Item;
import com.lishan.dao.Dao;
import com.lishan.model.BookType;
import com.lishan.util.CreatedIcon;
public class BookTypeModiAndDelIFrame extends JInternalFrame {
private JComboBox comboBox; //圖書類別的下拉菜單
private JTextField days, fakuan;
private JTextField BookTypeId;
private JTable table;
//private String[] array;
private String[] columnNames = { "圖書類別編號", "圖書類別名稱", "可借天數(shù)", "罰款" };//table的列名
DefaultComboBoxModel bookTypeModel;
DefaultTableModel model;
Map map;
private Object[][] getFileStates(List list) {
Object[][] results = new Object[list.size()][columnNames.length];
for (int i = 0; i < list.size(); i++) {
BookType booktype = (BookType) list.get(i);
results[i][0] = booktype.getId();
results[i][1] = booktype.getTypeName();
results[i][2] = booktype.getDays();
results[i][3] = booktype.getFakuan();
}
return results;
}
/**
* Create the frame
*/
public BookTypeModiAndDelIFrame() {
super();
setTitle("圖書類別修改");
setBounds(100, 100, 500, 350);
setIconifiable(true);
setClosable(true);
final JPanel panel = new JPanel();
panel.setLayout(new BorderLayout());
getContentPane().add(panel, BorderLayout.NORTH);
final JLabel logoLabel = new JLabel();
ImageIcon bookTypeModiAndDelIcon = CreatedIcon
.add("booktypemodify.jpg");
logoLabel.setIcon(bookTypeModiAndDelIcon);
logoLabel.setPreferredSize(new Dimension(400, 80));
logoLabel.setText("logo");
panel.add(logoLabel);
final JPanel panel_1 = new JPanel();
getContentPane().add(panel_1);
final JScrollPane scrollPane = new JScrollPane();
scrollPane.setPreferredSize(new Dimension(400, 130));
panel_1.add(scrollPane);
model = new DefaultTableModel();
Object[][] results = getFileStates(Dao.selectBookCategory());//存放圖書類別數(shù)據(jù)集合.
model.setDataVector(results, columnNames);//設(shè)置table的表格模型,以columnNames為各列列名,results為各行數(shù)據(jù)
table = new JTable();
table.setModel(model);//把 table的模式設(shè)置為model
table.addMouseListener(new TableListener());//注冊鼠標(biāo)點擊事件對象監(jiān)聽
scrollPane.setViewportView(table);//添加滾動條
final JPanel panel_2 = new JPanel();
panel_1.add(panel_2);
final GridLayout gridLayout = new GridLayout(0, 6);
gridLayout.setVgap(5);
gridLayout.setHgap(5);
panel_2.setLayout(gridLayout);
panel_2.setPreferredSize(new Dimension(400, 43));
final JLabel label = new JLabel();
label.setText("類別編號:");
panel_2.add(label);
BookTypeId = new JTextField();
BookTypeId.setFocusable(false);
panel_2.add(BookTypeId);
final JLabel label_1 = new JLabel();
label_1.setText("類別名稱:");
panel_2.add(label_1);
comboBox = new JComboBox();
bookTypeModel = (DefaultComboBoxModel) comboBox.getModel();
// 從數(shù)據(jù)庫中取出圖書類別
List list = Dao.selectBookCategory();
for (int i = 0; i < list.size(); i++) {
BookType booktype = (BookType) list.get(i);
Item item = new Item();//用組合框來
item.setId(booktype.getId());
item.setName(booktype.getTypeName());
bookTypeModel.addElement(item);
}
panel_2.add(comboBox);
final JLabel label_2 = new JLabel();
label_2.setText("可借天數(shù):");
panel_2.add(label_2);
days = new JTextField();
days.addKeyListener(new NumberListener());
panel_2.add(days);
final JLabel label_3 = new JLabel();
label_3.setText("罰款:");
panel_2.add(label_3);
fakuan = new JTextField();
fakuan.addKeyListener(new NumberListener());
panel_2.add(fakuan);
final JPanel panel_4 = new JPanel();
panel_1.add(panel_4);
final JButton buttonMod = new JButton();
buttonMod.setText("修改");
buttonMod.addActionListener(new ButtonAddListener());
panel_4.add(buttonMod);
final JButton buttonExit = new JButton();
buttonExit.setText("退出");
buttonExit.addActionListener(new CloseActionListener());
panel_4.add(buttonExit);
setVisible(true);
//
}
class TableListener extends MouseAdapter {
public void mouseClicked(final MouseEvent e) {
int selRow = table.getSelectedRow();//獲得鼠標(biāo)點擊的當(dāng)前行
BookTypeId.setText(table.getValueAt(selRow, 0).toString().trim());
bookTypeModel.setSelectedItem(table.getValueAt(selRow, 1)
.toString().trim());
days.setText(table.getValueAt(selRow, 2).toString().trim());
fakuan.setText(table.getValueAt(selRow, 3).toString().trim());
}
}
class ButtonAddListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
Object selectedItem = bookTypeModel.getSelectedItem();
int i = Dao.UpdatebookType(BookTypeId.getText().trim(),
selectedItem.toString(), days.getText(), fakuan.getText()
.trim());
System.out.println(i);
if (i == 1) {
Object[][] results = getFileStates(Dao.selectBookCategory());
model.setDataVector(results, columnNames);
table.setModel(model);
//JOptionPane.showInternalMessageDialog(null, "修改成功");
JOptionPane.showMessageDialog(null, "修改成功");
}
}
}
// class ButtonDelListener implements ActionListener{
// public void actionPerformed(ActionEvent e) {
// int i = Dao.DelbookType(BookTypeId.getText().trim());
// if(i == 1){
// JOptionPane.showMessageDialog(null, "刪除成功");
// Object[][] results=getFileStates(Dao.selectBookCategory());
// model.setDataVector(results,columnNames);
// table.setModel(model);
// }
//
// }
//
// }
class CloseActionListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
doDefaultCloseAction();
}
}
class NumberListener extends KeyAdapter{
public void keyTyped(KeyEvent e){
String numStr = "0123456789." + (char)8;
if(numStr.indexOf(e.getKeyChar()) < 0){
e.consume();
}
}
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -