⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 booktypemodianddeliframe.java

📁 图书管理系统java+swing+SQL Server实现 包含了图书管理系统的所有功能 纯JAVA实现
💻 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 = { "图书类别编号", "图书类别名称", "可借天数", "罚款" };//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());//存放图书类别数据集合.
		model.setDataVector(results, columnNames);//设置table的表格模型,以columnNames为各列列名,results为各行数据
		table = new JTable();
		table.setModel(model);//把 table的模式设置为model
		table.addMouseListener(new TableListener());//注册鼠标点击事件对象监听
		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();

		// 从数据库中取出图书类别
		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("可借天数:");
		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();//获得鼠标点击的当前行
			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();
			}
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -