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

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

?? deletecustomer.java

?? 一個用java做的銀行系統
?? JAVA
字號:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;

public class DeleteCustomer extends JInternalFrame implements ActionListener {

	private JPanel jpDel = new JPanel();
	private JLabel lbNo, lbName, lbDate, lbBal;
	private JTextField txtNo, txtName, txtDate, txtBal;
	private JButton btnDel, btnCancel;

	private int recCount = 0;
	private int rows = 0;
	private	int total = 0;

	//String Type Array use to Load Records From File.
	private String records[][] = new String [500][6];

	private FileInputStream fis;
	private DataInputStream dis;

	DeleteCustomer () {

		// super(Title, Resizable, Closable, Maximizable, Iconifiable)
		super ("Delete Account Holder", false, true, false, true);
		setSize (350, 235);

		jpDel.setLayout (null);

		lbNo = new JLabel ("Account No:");
		lbNo.setForeground (Color.black);
		lbNo.setBounds (15, 20, 80, 25);
	        lbName = new JLabel ("Person Name:");
		lbName.setForeground (Color.black);
	        lbName.setBounds (15, 55, 90, 25);
		lbDate = new JLabel ("Last Transaction:");
		lbDate.setForeground (Color.black);
		lbDate.setBounds (15, 90, 100, 25);
		lbBal = new JLabel ("Balance:");
		lbBal.setForeground (Color.black);
		lbBal.setBounds (15, 125, 80, 25);

		txtNo = new JTextField ();
		txtNo.setHorizontalAlignment (JTextField.RIGHT);
		txtNo.setBounds (125, 20, 200, 25);
		txtName = new JTextField ();
		txtName.setEnabled (false);
		txtName.setBounds (125, 55, 200, 25);
		txtDate = new JTextField ();
		txtDate.setEnabled (false);
		txtDate.setBounds (125, 90, 200, 25);
		txtBal = new JTextField ();
		txtBal.setEnabled (false);
		txtBal.setHorizontalAlignment (JTextField.RIGHT);
		txtBal.setBounds (125, 125, 200, 25);

		//Aligning The Buttons.
		btnDel = new JButton ("Delete");
		btnDel.setBounds (20, 165, 120, 25);
		btnDel.addActionListener (this);
		btnCancel = new JButton ("Cancel");
		btnCancel.setBounds (200, 165, 120, 25);
		btnCancel.addActionListener (this);

		//Adding the All the Controls to Panel.
		jpDel.add (lbNo);
		jpDel.add (txtNo);
		jpDel.add (lbName);
		jpDel.add (txtName);
		jpDel.add (lbDate);
		jpDel.add (txtDate);
		jpDel.add (lbBal);
		jpDel.add (txtBal);
		jpDel.add (btnDel);
		jpDel.add (btnCancel);

		//Restricting The User Input to only Numerics in Numeric TextBoxes.
		txtNo.addKeyListener (new KeyAdapter() {
			public void keyTyped (KeyEvent ke) {
				char c = ke.getKeyChar ();
				if (!((Character.isDigit (c) || (c == KeyEvent.VK_BACK_SPACE)))) {
					getToolkit().beep ();
					ke.consume ();
      				}
    			}
  		}
		);
		//Checking the Accunt No. Provided By User on Lost Focus of the TextBox.
		txtNo.addFocusListener (new FocusListener () {
			public void focusGained (FocusEvent e) { }
			public void focusLost (FocusEvent fe) {
				if (txtNo.getText().equals ("")) { }
				else {
					rows = 0;
					populateArray ();	//Load All Existing Records in Memory.
					findRec ();		//Finding if Account No. Already Exist or Not.
				}
			}
		}
		);

		//Adding Panel to Window.
		getContentPane().add (jpDel);

		populateArray ();	//Load All Existing Records in Memory.

		//In the End Showing the New Account Window.
		setVisible (true);

	}

	//Function use By Buttons of Window to Perform Action as User Click Them.
	public void actionPerformed (ActionEvent ae) {

		Object obj = ae.getSource();

		if (obj == btnDel) {
			if (txtNo.getText().equals("")) {
				JOptionPane.showMessageDialog (this, "Please! Provide Id of Customer.",
						"BankSystem - EmptyField", JOptionPane.PLAIN_MESSAGE);
				txtNo.requestFocus();
			}
			else {
				deletion ();	//Confirm Deletion of Current Record.
			}
		}
		if (obj == btnCancel) {
			txtClear ();
			setVisible (false);
			dispose();
		}

	}

	//Function use to load all Records from File when Application Execute.
	void populateArray () {

		try {
			fis = new FileInputStream ("Bank.dat");
			dis = new DataInputStream (fis);
			//Loop to Populate the Array.
			while (true) {
				for (int i = 0; i < 6; i++) {
					records[rows][i] = dis.readUTF ();
				}
				rows++;
			}
		}
		catch (Exception ex) {
			total = rows;
			if (total == 0) {
				JOptionPane.showMessageDialog (null, "Records File is Empty.\nEnter Records First to Display.",
					"BankSystem - EmptyFile", JOptionPane.PLAIN_MESSAGE);
				btnEnable ();
			}
			else {
				try {
					dis.close();
					fis.close();
				}
				catch (Exception exp) { }
			}
		}

	}

	//Function use to Find Record by Matching the Contents of Records Array with ID TextBox.
	void findRec () {

		boolean found = false;
		for (int x = 0; x < total; x++) {
			if (records[x][0].equals (txtNo.getText())) {
				found = true;
				showRec (x);
				break;
			}
		}
		if (found == false) {
			String str = txtNo.getText ();
			txtClear ();
			JOptionPane.showMessageDialog (this, "Account No. " + str + " doesn't Exist.",
					"BankSystem - WrongNo", JOptionPane.PLAIN_MESSAGE);
		}

	}

	//Function which display Record from Array onto the Form.
	void showRec (int intRec) {

		txtNo.setText (records[intRec][0]);
		txtName.setText (records[intRec][1]);
		txtDate.setText (records[intRec][2] + ", " + records[intRec][3] + ", " + records[intRec][4]);
		txtBal.setText (records[intRec][5]);
		recCount = intRec;

	}

	//Confirming the Deletion Decision made By User of Program.
	void deletion () {

		try {
			//Show a Confirmation Dialog.
		    	int reply = JOptionPane.showConfirmDialog (this,
					"Are you Sure you want to Delete\n" + txtName.getText () + " Record From BankSystem?",
					"Bank System - Delete", JOptionPane.YES_NO_OPTION, JOptionPane.PLAIN_MESSAGE);
			//Check the User Selection.
			if (reply == JOptionPane.YES_OPTION) {
				delRec ();	//Delete the Selected Contents of Array.
			}
			else if (reply == JOptionPane.NO_OPTION) { }
		} 

		catch (Exception e) {}

	}

	//Function use to Delete an Element from the Array.
	void delRec () {

		try {
			if (records != null) {
				for(int i = recCount; i < total; i++) {
					for (int r = 0; r < 6; r++) {
						records[i][r] = records[i+1][r];				
						if (records[i][r] == null) break;
					}
				}
				total = total - 1;
				deleteFile ();
			}
		}
		catch (ArrayIndexOutOfBoundsException ex) { }

	}

	//Function use to Save Records to File After Deleting the Record of User Choice.
	void deleteFile () {

		try {
			FileOutputStream fos = new FileOutputStream ("Bank.dat");
			DataOutputStream dos = new DataOutputStream (fos);
			if (records != null) {
				for (int i = 0; i < total; i++) {
					for (int r = 0; r < 6; r++) {
						dos.writeUTF (records[i][r]);
						if (records[i][r] == null) break;
					}
				}
				JOptionPane.showMessageDialog (this, "Record has been Deleted Successfuly.",
					"BankSystem - Record Deleted", JOptionPane.PLAIN_MESSAGE);
				txtClear ();
			}
			else { }
			dos.close();
			fos.close();
		}
		catch (IOException ioe) {
			JOptionPane.showMessageDialog (this, "There are Some Problem with File",
						"BankSystem - Problem", JOptionPane.PLAIN_MESSAGE);
		}

	}

	//Function use to Clear all TextFields of Window.
	void txtClear () {

		txtNo.setText ("");
		txtName.setText ("");
		txtDate.setText ("");
		txtBal.setText ("");
		txtNo.requestFocus ();

	}

	//Function use to Lock Controls of Window.
	void btnEnable () {

		txtNo.setEnabled (false);
		btnDel.setEnabled (false);

	}

}	

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美国产精品| 亚洲乱码国产乱码精品精的特点| 高清国产一区二区| 麻豆精品国产91久久久久久| 亚洲国产一区视频| 久久久久久久久久久久久夜| 久久久久99精品一区| 成人免费一区二区三区视频| 中文字幕一区二区三区在线不卡| 日韩精品国产精品| 日韩黄色在线观看| 色综合久久久久综合体桃花网| av电影天堂一区二区在线 | 亚洲乱码国产乱码精品精小说| 日韩中文字幕区一区有砖一区| 99国产精品久久久久久久久久| zzijzzij亚洲日本少妇熟睡| 欧美va亚洲va香蕉在线| 久久影院午夜论| 国产一区二区三区观看| 18欧美亚洲精品| 日本中文字幕一区二区视频| 久久成人免费网| 大胆欧美人体老妇| 欧美sm美女调教| 亚洲一区二区三区中文字幕在线 | 欧美视频三区在线播放| 欧美电影在线免费观看| 欧美va亚洲va香蕉在线| 美女一区二区视频| 欧美一区二区黄色| 国产精品免费人成网站| 亚洲午夜精品久久久久久久久| 91香蕉视频黄| 欧美精品一区二区三区很污很色的 | 精品视频一区三区九区| 精品精品国产高清a毛片牛牛| 日韩成人av影视| 日韩一区二区麻豆国产| 国产精品久久久久久久浪潮网站| 曰韩精品一区二区| 欧美主播一区二区三区美女| 欧美在线视频日韩| 亚洲成人在线免费| 成人午夜在线免费| 成人欧美一区二区三区1314| 色诱亚洲精品久久久久久| 亚洲人成在线观看一区二区| 狠狠色狠狠色综合| 欧美日韩高清在线| 亚洲欧美一区二区久久 | 国产精品久久久久久一区二区三区| 不卡的av网站| 色综合网色综合| 欧美电影免费观看高清完整版 | 午夜精品aaa| 不卡一卡二卡三乱码免费网站| 亚洲女人****多毛耸耸8| 欧美日韩在线播放| 国产一区激情在线| 亚洲欧美激情一区二区| 91精品国产综合久久久久久漫画| 亚洲美女在线一区| 欧美一区国产二区| 波多野结衣视频一区| 五月婷婷另类国产| 国产日产欧美一区二区视频| 九色综合狠狠综合久久| 日韩欧美中文字幕一区| 国产成人av一区二区三区在线观看| 欧美va亚洲va国产综合| av亚洲精华国产精华精华| 日韩精品亚洲专区| 国产精品欧美精品| 91精品国产综合久久福利软件 | 精品一二三四区| 亚洲男同1069视频| 久久色成人在线| 88在线观看91蜜桃国自产| av一本久道久久综合久久鬼色| 日韩精彩视频在线观看| 中文字幕一区二区三区视频 | 视频一区二区三区入口| 国产精品盗摄一区二区三区| 日韩一级片在线播放| 色网站国产精品| 国产毛片精品视频| 奇米888四色在线精品| 欧美一区二区三区系列电影| eeuss鲁一区二区三区| 精品一区二区三区视频| 亚洲国产三级在线| 国产精品久久国产精麻豆99网站| 欧美一区二区三区色| 欧美亚洲动漫精品| 99久久久国产精品| 国产aⅴ综合色| 紧缚奴在线一区二区三区| 亚洲成av人综合在线观看| 亚洲男人天堂一区| 国产精品伦理一区二区| 精品国产123| 精品欧美久久久| 欧美一区二区三级| 欧美日韩亚洲国产综合| 欧美亚洲免费在线一区| 欧美在线一区二区三区| 欧美在线小视频| 欧美视频精品在线观看| 日本电影欧美片| 日韩专区在线视频| 亚洲午夜激情av| 亚洲午夜精品久久久久久久久| 一区二区三区在线观看欧美| 日韩美女天天操| 日韩一区二区三区在线视频| 91精品欧美综合在线观看最新 | 成人av免费在线播放| 国产激情精品久久久第一区二区| 国内成人精品2018免费看| 久久99国产精品麻豆| 国产一区二区三区综合| 国产一区91精品张津瑜| 高清成人免费视频| 91在线丨porny丨国产| 色天使色偷偷av一区二区| 在线免费一区三区| 欧美猛男男办公室激情| 日韩一级免费观看| 日本一区二区三级电影在线观看| 中文字幕精品—区二区四季| 欧美精品久久久久久久多人混战 | 欧美日韩精品一区二区在线播放| 欧美日韩中文字幕一区| 91超碰这里只有精品国产| 欧美一区二区三区精品| 久久色.com| 樱桃视频在线观看一区| 五月天婷婷综合| 国产伦精品一区二区三区在线观看| 国产.欧美.日韩| 欧美优质美女网站| 欧美一区二区三区在线看| 久久久久久久久久久黄色| 亚洲欧美在线另类| 日韩二区三区在线观看| 国产精品一区二区久久不卡 | 欧美一区二区三区视频免费| 亚洲精品一区在线观看| 国产精品久久看| 日日摸夜夜添夜夜添精品视频| 国产中文字幕一区| 91国在线观看| 欧美精品一区男女天堂| 亚洲三级在线播放| 亚洲天堂网中文字| 日本中文在线一区| 不卡的av中国片| 日韩欧美国产电影| 亚洲乱码国产乱码精品精的特点| 免费在线观看精品| 99久久婷婷国产综合精品电影| 欧美一区二区视频在线观看2022| 国产精品人妖ts系列视频| 日韩成人免费电影| 99这里只有精品| 欧美tickling挠脚心丨vk| 亚洲精品欧美在线| 国产成人自拍高清视频在线免费播放| 91传媒视频在线播放| 久久久五月婷婷| 日韩av不卡一区二区| 日本高清视频一区二区| 国产女同性恋一区二区| 日韩av中文字幕一区二区三区| 91香蕉视频在线| 国产午夜精品在线观看| 亚洲人成在线观看一区二区| 国产一区免费电影| 91麻豆精品国产自产在线 | 色综合久久六月婷婷中文字幕| 精品av综合导航| 日本成人在线网站| 色狠狠桃花综合| 18成人在线观看| 99久久婷婷国产综合精品| 国产亚洲欧美一区在线观看| 蜜臀av性久久久久蜜臀aⅴ| 欧美日韩精品一二三区| 亚洲精品久久久久久国产精华液| 成人国产亚洲欧美成人综合网| 亚洲精品在线三区| 国产在线播精品第三| 欧美成人猛片aaaaaaa| 美日韩黄色大片| 日韩丝袜美女视频| 热久久免费视频| 欧美电影免费观看完整版| 精品午夜久久福利影院| 久久亚洲一区二区三区明星换脸|