亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? modifyanddelreadertype.java

?? Java Swing寫的圖書館管理系統
?? JAVA
字號:
package library.iframe;

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.FocusAdapter;
import java.awt.event.FocusEvent;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.ArrayList;

import javax.swing.JButton;
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.SwingConstants;
import javax.swing.table.DefaultTableModel;

import library.DBConnectOperation.Dbo;
import library.model.BookType;
import library.model.ReaderType;
import library.util.CreateIcon;

public class ModifyAndDelReaderType extends JInternalFrame {
	private JTextField typeId;
	private JTextField typeName;
	private JTextField maxBorrowNumber;
	private JTextField maxKeepDays;
	private JButton saveButton;
	private JButton cancelButton;
	private JButton delButton;
	private ReaderType readerType;
	private ArrayList readerTypeList;
	private JTable table;
	private ReaderType tempReaderType=new ReaderType();
	private JButton clearButton;
	private int tempId=-1;	//置搜索標志,當tempId!=-1是表示已經搜索到指定的讀者類型

//	首先輸入讀者類別名稱,為了能夠修改此讀者類別的名稱,引入了tempId標志,當tempId=-1是表示讀者類別不存在
//	或未輸入讀者類別名稱,當tempId=0是表示讀者類別名稱輸入正確,當點擊保存按鈕或重新選定讀者類別按鈕時,、
//	該標志被重置,當要取消此次修改讀者類別時,一定要單擊重新選定讀者類別或返回按鈕,否則會重命名當前的讀者類別
	
	private DefaultTableModel model=new DefaultTableModel();
	private String columnNames[]={"類型ID","類型名稱","最大借閱數量","最大借閱天數"};
	public ModifyAndDelReaderType(){
		super();
		setBounds(100, 100, 500, 380);
		setTitle("讀者類別修改或刪除");
		setClosable(true);
		setIconifiable(true);
		
		//設置頂部圖片面板
		JLabel labelTop=new JLabel();
		labelTop.setIcon(CreateIcon.add("readerTypeModify.jpg"));
		getContentPane().add(labelTop,BorderLayout.NORTH);
		((BorderLayout) getContentPane().getLayout()).setHgap(5);
		
		//設置中央面板,用于顯示二維表格
		JPanel panelCenter=new JPanel();
		getContentPane().add(panelCenter);
		JScrollPane scrollPane=new JScrollPane();
		scrollPane.setPreferredSize(new Dimension(460,120));
		panelCenter.add(scrollPane);
		
		table=new JTable();
		scrollPane.setViewportView(table);	
		table.setModel(model);
		model.setColumnIdentifiers(columnNames);
		
		readerTypeList=new ArrayList();
		readerTypeList=Dbo.selectReaderType();
		for(int i=0;i<readerTypeList.size();i++){
			tempReaderType=(ReaderType)readerTypeList.get(i);
			addTableRow(tempReaderType);
		}
		//獲取選擇的行
		table.addMouseListener(new MouseAdapter(){
			public void mousePressed(MouseEvent e){
				if(readerTypeList.size()>0){	//當圖書類別表不空時
					int i=table.getSelectedRow();
					System.out.println(i);
					if(i!=-1){
						String tempStr=(String)table.getValueAt(i, 1);	//返回指定行列所存儲的值
						typeName.setText(tempStr);
						table.transferFocus();
						typeId.transferFocus();
						typeName.transferFocus();
					}
				}
			}
		});
		
		//設置底部面板,用于添加各種文本框和相迎的按鈕
		JPanel panelBottom=new JPanel();
		BorderLayout borderLayoutBottom=new BorderLayout();
		borderLayoutBottom.setVgap(10);
		panelBottom.setLayout(borderLayoutBottom);
		getContentPane().add(panelBottom,BorderLayout.SOUTH);
		
		//設置底部上面板,用于添加各種文本框
		JPanel panelBottomUp=new JPanel();
		GridLayout gridLayoutBottomUp=new GridLayout(0,4);
		gridLayoutBottomUp.setVgap(10);
		gridLayoutBottomUp.setHgap(5);
		panelBottomUp.setLayout(gridLayoutBottomUp);
		panelBottom.add(panelBottomUp);
		
		JLabel labelTypeId=new JLabel();
		labelTypeId.setText("類別編號:");
		labelTypeId.setHorizontalAlignment(SwingConstants.RIGHT);
		panelBottomUp.add(labelTypeId);
		typeId=new JTextField();
		typeId.setEditable(false);
		panelBottomUp.add(typeId);
		
		JLabel labelTypeName=new JLabel();
		labelTypeName.setText("讀者類別名稱:");
		labelTypeName.setHorizontalAlignment(SwingConstants.RIGHT);
		panelBottomUp.add(labelTypeName);
		typeName=new JTextField();
		typeName.addFocusListener(new FocusAdapter(){
			public void focusLost(FocusEvent e){
				if((Dbo.selectReaderTypeName(typeName.getText()))==null&&tempId==-1){
					JOptionPane.showMessageDialog(null,"要修改的讀者類別不存在,請重新輸入!");
					typeName.setText("");
					typeId.setText("");
					maxBorrowNumber.setText("");
					maxKeepDays.setText("");
					return;
				}
				else if((Dbo.selectDetailReaderType(typeName.getText())!=null)){	//重名名讀者類別名稱時,取消該文本框的監聽
					readerType=Dbo.selectDetailReaderType(typeName.getText());
					typeName.setText(readerType.getTypeName());
					typeId.setText(new Integer(readerType.getTypeId()).toString());
					maxBorrowNumber.setText(new Integer(readerType.getMaxBorrowNumber()).toString());
					if(new Integer(readerType.getMaxKeepDays())==0)	//表示使用圖書類別中的最大借閱天數信息,而不使用readerType中的最大借閱天數
							maxKeepDays.setText("");
						else maxKeepDays.setText(new Integer(readerType.getMaxKeepDays()).toString());
					return;
				}
			}
		});
		panelBottomUp.add(typeName);
		
		JLabel labelMaxBorrowNumber=new JLabel();
		labelMaxBorrowNumber.setText("最大借閱數量:");
		labelMaxBorrowNumber.setHorizontalAlignment(SwingConstants.RIGHT);
		panelBottomUp.add(labelMaxBorrowNumber);
		maxBorrowNumber=new JTextField();
		maxBorrowNumber.addKeyListener(new KeyAdapter(){
			public void keyReleased(KeyEvent e){
				try{
					Integer.parseInt(maxBorrowNumber.getText());
				}catch(NumberFormatException ne){
					JOptionPane.showMessageDialog(null, "最大借閱數量應為數字!");
					maxBorrowNumber.setText("");
					return;
				}
			}
		});
		panelBottomUp.add(maxBorrowNumber);
		
		JLabel labelMaxKeepDays=new JLabel();
		labelMaxKeepDays.setText("最大借閱天數");
		labelMaxKeepDays.setHorizontalAlignment(SwingConstants.RIGHT);
		panelBottomUp.add(labelMaxKeepDays);
		maxKeepDays=new JTextField();
		maxKeepDays.addKeyListener(new KeyAdapter(){
			public void keyReleased(KeyEvent ee){
				try{
					Integer.parseInt(maxKeepDays.getText());
				}catch(NumberFormatException ex){
					JOptionPane.showMessageDialog(null,"最大借閱天數應為數字!");
					maxKeepDays.setText("");
					return;
				}
			}
		});
		panelBottomUp.add(maxKeepDays);
		
		//設置底部下面板,用于添加相應按鈕
		JPanel panelBottomDown=new JPanel();
		FlowLayout flowLayout=new FlowLayout();
		flowLayout.setHgap(15);
		flowLayout.setVgap(5);
		panelBottomDown.setLayout(flowLayout);
		panelBottom.add(panelBottomDown,BorderLayout.SOUTH);
		
		saveButton=new JButton();
		saveButton.setText("保存");
		saveButton.addActionListener(new ActionListener(){
			public void actionPerformed(ActionEvent ae){
				if(typeName.getText().length()==0){
					JOptionPane.showMessageDialog(null,"讀者類別名稱不能為空!");
					return;
				}
				if(maxBorrowNumber.getText().length()==0){
					JOptionPane.showMessageDialog(null,"最大借閱數量不能為空!");
					return;
				}
				if(Dbo.selectReaderTypeName(typeName.getText())!=null&&!typeName.getText().equals(readerType.getTypeName())){
					JOptionPane.showMessageDialog(null, "與現有讀者類別重復,請重新輸入!");
					return;
				}
				String sql;
				if(maxKeepDays.getText().length()==0)
					sql="update tb_readerType set typeName='"+typeName.getText()+"',maxBorrowNumber="+Integer.parseInt(maxBorrowNumber.getText())
					+",maxKeepDays=NULL"
					+" where typeId="+readerType.getTypeId();
					else sql="update tb_readerType set typeName='"+typeName.getText()+"',maxBorrowNumber="+Integer.parseInt(maxBorrowNumber.getText())
					+",maxKeepDays="+Integer.parseInt(maxKeepDays.getText())
					+" where typeId="+readerType.getTypeId();

				int i=Dbo.executeUpdate(sql);
				if(i!=-1){
					JOptionPane.showMessageDialog(null, "修改成功!");
					typeName.setText("");
					typeId.setText("");
					maxKeepDays.setText("");
					maxBorrowNumber.setText("");
					tempId=-1;	//重置查找標志
					while(model.getRowCount()!=0)		//重新顯示表
						model.removeRow(model.getRowCount()-1);
					readerTypeList=Dbo.selectReaderType();
					for(int j=0;j<readerTypeList.size();j++){
						tempReaderType=(ReaderType)readerTypeList.get(j);
						addTableRow(tempReaderType);
					}
				}
				else {
					JOptionPane.showMessageDialog(null,"添加失敗,請檢查數據源!");
					return;
				}
			}
		});
		panelBottomDown.add(saveButton);
		
		delButton=new JButton();
		delButton.setText("刪除");
		delButton.addActionListener(new ActionListener(){
			public void actionPerformed(ActionEvent e){
				if(typeName.getText().length()==0){
					JOptionPane.showMessageDialog(null,"讀者名稱類別不能為空!");
					return;
				}
				String sql="delete from tb_readerType where typeId="+readerType.getTypeId();
				int i=Dbo.executeUpdate(sql);
				if(i!=-1){
					JOptionPane.showMessageDialog(null,	"刪除成功!");
					typeName.setText("");
					typeId.setText("");
					maxBorrowNumber.setText("");
					maxKeepDays.setText("");
					tempId=-1;	//重置查找標志
					while(model.getRowCount()!=0)		//重新顯示表
						model.removeRow(model.getRowCount()-1);
					readerTypeList=Dbo.selectReaderType();
					for(int j=0;j<readerTypeList.size();j++){
						tempReaderType=(ReaderType)readerTypeList.get(j);
						addTableRow(tempReaderType);
					}
					return;
				}
				else{
					JOptionPane.showMessageDialog(null,"該讀者類別正在使用,請先刪除該類別下所有的讀者后,重新進行此操作!");
					return;
				}
			}
		});
		panelBottomDown.add(delButton);
		
		clearButton=new JButton();
		clearButton.setText("取消本次修改");
		clearButton.addActionListener(new ActionListener(){
			public void actionPerformed(ActionEvent ae){
				typeName.setText("");
				typeId.setText("");
				maxBorrowNumber.setText("");
				maxKeepDays.setText("");
				tempId=-1;	//重置查找標志
			}
		});
		panelBottomDown.add(clearButton);
		
		cancelButton=new JButton();
		cancelButton.setText("返回");
		cancelButton.addActionListener(new ActionListener(){
			public void actionPerformed(ActionEvent ae){
				dispose();
			}
		});
		panelBottomDown.add(cancelButton);
		setVisible(true);
	}
	public void addTableRow(ReaderType readerType){	//類別查詢結果不為空時調用
		String str[]=new String[4];
		str[0]=new Integer(readerType.getTypeId()).toString();
		str[1]=readerType.getTypeName();
		str[2]=new Integer(readerType.getMaxBorrowNumber()).toString();
		str[3]=new Integer(readerType.getMaxKeepDays()).toString();
		if(new Integer(readerType.getMaxKeepDays())==0)	//表示使用圖書類別中的最大借閱天數信息,而不使用readerType中的最大借閱天數
			str[3]="";
		else str[3]=new Integer(readerType.getMaxKeepDays()).toString();
		model.addRow(str);
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
av激情综合网| 久久久国产精品午夜一区ai换脸| 欧美日韩国产片| 国产午夜精品久久久久久免费视 | 天堂久久久久va久久久久| 狠狠色丁香久久婷婷综合丁香| 99精品视频一区二区| 日韩免费看网站| 亚洲成人黄色小说| 91在线高清观看| 久久精品一区二区三区四区| 亚洲va韩国va欧美va| 丁香婷婷综合激情五月色| 91麻豆精品国产91久久久使用方法 | av影院午夜一区| 久久午夜羞羞影院免费观看| 天天色天天操综合| 欧美网站大全在线观看| 国产精品国产馆在线真实露脸| 久久99精品久久久| 欧美久久一二区| 亚洲综合另类小说| 91热门视频在线观看| 中文字幕第一页久久| 极品美女销魂一区二区三区免费| 欧美剧在线免费观看网站| 亚洲精品国产精品乱码不99| 成人蜜臀av电影| 国产亚洲精品资源在线26u| 毛片av中文字幕一区二区| 欧美精品一二三区| 五月婷婷综合网| 欧美伦理电影网| 日韩国产成人精品| 欧美高清视频一二三区 | 色视频一区二区| 自拍偷在线精品自拍偷无码专区| 国产成人av电影| 国产亚洲欧洲997久久综合 | 偷拍自拍另类欧美| 7777女厕盗摄久久久| 免费欧美在线视频| 日韩限制级电影在线观看| 全部av―极品视觉盛宴亚洲| 欧美日韩精品一区二区天天拍小说| 一区二区三区中文字幕电影| 色久优优欧美色久优优| 亚洲国产精品尤物yw在线观看| 欧美最新大片在线看| 午夜精品福利一区二区三区蜜桃| 欧美一级在线免费| 国产一区二区按摩在线观看| 久久精品亚洲国产奇米99| 成人免费高清视频在线观看| 中文字幕日韩一区二区| 精品视频在线免费看| 琪琪一区二区三区| 国产精品理论在线观看| 欧美综合久久久| 久久国产精品第一页| 国产精品欧美精品| 欧美三区在线视频| 国产成人超碰人人澡人人澡| 中文字幕佐山爱一区二区免费| 欧美午夜片在线看| 久久精品国产99| 中文字幕一区二区三区四区| 欧美午夜理伦三级在线观看| 久久不见久久见免费视频7| 中文字幕电影一区| 欧美精品三级日韩久久| 粉嫩av一区二区三区在线播放| 亚洲精品日产精品乱码不卡| 日韩一卡二卡三卡| 色悠久久久久综合欧美99| 极品少妇一区二区| 亚洲成精国产精品女| 亚洲国产高清aⅴ视频| 欧美浪妇xxxx高跟鞋交| 99久久99久久久精品齐齐| 免费在线观看精品| 亚洲精品国产无套在线观| 久久久久久久久久电影| 欧美日韩国产综合久久| 成人爽a毛片一区二区免费| 青青草97国产精品免费观看 | 亚洲高清不卡在线观看| 国产日韩欧美高清在线| 宅男噜噜噜66一区二区66| 91蝌蚪porny| 国产高清不卡一区二区| 青青青伊人色综合久久| 亚洲制服欧美中文字幕中文字幕| 国产拍揄自揄精品视频麻豆| 欧美日韩午夜影院| 在线精品亚洲一区二区不卡| 丁香网亚洲国际| 国产老肥熟一区二区三区| 爽好久久久欧美精品| 亚洲最新在线观看| 欧美一区二区视频在线观看2020| 国产精品毛片大码女人| 欧美福利电影网| 欧美亚洲尤物久久| 色婷婷久久久亚洲一区二区三区| 国产精品996| 久久精品av麻豆的观看方式| 亚洲成av人片一区二区| 中文字幕综合网| 国产精品久久久久影院色老大| 欧美精品一区二区三| 日韩精品一区二区三区视频| 欧美精品自拍偷拍| 欧美一区二区三区日韩视频| 欧美性极品少妇| 欧美日免费三级在线| 欧美专区日韩专区| 欧美午夜影院一区| 欧美日韩国产一级| 正在播放一区二区| 日韩精品一区二区三区蜜臀| 欧美一级日韩免费不卡| 日韩欧美中文一区二区| 2020国产精品自拍| 国产目拍亚洲精品99久久精品| 国产免费成人在线视频| 国产精品第一页第二页第三页| 国产精品素人视频| 亚洲精品视频观看| 午夜电影一区二区三区| 蜜桃精品视频在线| 国产成人精品免费看| 成人av电影在线播放| 色噜噜狠狠一区二区三区果冻| 一本大道久久a久久精二百| 欧美色综合久久| 欧美一区二区三区不卡| 日韩欧美专区在线| 日本一区二区三区免费乱视频 | 久久国产视频网| 国产精品综合二区| 91蜜桃视频在线| 欧美日本韩国一区二区三区视频| 欧美一区二区高清| 国产精品美女视频| 亚洲高清免费一级二级三级| 毛片av一区二区三区| 国产成人一区二区精品非洲| 99视频在线精品| 88在线观看91蜜桃国自产| 国产三级精品三级| 亚洲风情在线资源站| 国产一区在线观看麻豆| 色综合久久中文字幕| 日韩一区二区在线观看| 中文字幕制服丝袜成人av| 日韩黄色免费电影| 成人精品视频一区| 欧美一级二级三级乱码| 1000部国产精品成人观看| 日产欧产美韩系列久久99| 99精品视频在线播放观看| 欧美一二三区在线观看| 亚洲免费色视频| 国产一区二区网址| 91精品国产欧美一区二区成人 | 午夜视频在线观看一区二区| 国产酒店精品激情| 3d动漫精品啪啪1区2区免费| 亚洲欧洲日韩在线| 激情综合网av| 欧美精品久久99| 亚洲男人的天堂一区二区| 国产毛片一区二区| 日韩写真欧美这视频| 亚洲高清免费一级二级三级| eeuss国产一区二区三区| 精品久久免费看| 午夜精品福利一区二区三区av| 99国产精品国产精品毛片| 久久网站热最新地址| 欧美a一区二区| 欧美性受xxxx黑人xyx性爽| 国产精品久久久久久久久免费丝袜| 蜜臂av日日欢夜夜爽一区| 欧美亚洲愉拍一区二区| 中文字幕亚洲欧美在线不卡| 国产精品自拍网站| 精品国一区二区三区| 麻豆国产欧美日韩综合精品二区| 欧美性猛片aaaaaaa做受| 成人欧美一区二区三区1314| 国产精品亚洲第一| 久久久久久久久久久久电影| 久久99精品久久久| 精品久久国产老人久久综合| 免费高清在线视频一区·| 欧美一区二区三区四区在线观看 | 欧美日韩在线播放三区| 亚洲精品综合在线|