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

📄 dealpanel.java

📁 java telephone notebook
💻 JAVA
字号:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.sql.rowset.*;

public class DealPanel extends JPanel{
	private JButton addButton,deleteButton,alterButton;

	public DealPanel(){
		setLayout(new FlowLayout());
		addButton = new JButton("添加");
		addButton.setMnemonic('A');
		addButton.setToolTipText("按Alt+A添加联系人");
		addButton.addActionListener(new Add());
		deleteButton = new JButton("删除");
		deleteButton.setMnemonic('D');
		deleteButton.setToolTipText("按Alt+D删除联系人");
		deleteButton.addActionListener(new Delete());
		alterButton = new JButton("修改");
		alterButton.setMnemonic('M');
		alterButton.setToolTipText("按Alt+M修改联系人信息");
		alterButton.addActionListener(new Alter());
		add(addButton);
		add(deleteButton);
		add(alterButton);
	}
	
	public void setAddButtonText(String name){
		addButton.setText(name);
	}
	
	public void setAlterButtonText(String name){
		alterButton.setText(name);
	}
	
	class Delete implements ActionListener{
		private JList list;
		private String lname[];
		private DbOperation db;
		
		public Delete(){	
			db = new DbOperation();
		}
		public void actionPerformed(ActionEvent event){
				int index = -1;
				list = PhoneBook.getNamePanel().getNameList();
				index = list.getSelectedIndex();
				if(index!=-1){
					int option = JOptionPane.showConfirmDialog(null,"真的要删除吗?","添加联系人",JOptionPane.OK_CANCEL_OPTION,JOptionPane.QUESTION_MESSAGE);
					if(option == JOptionPane.OK_OPTION){
						String dname = PhoneBook.getSelectedText();
						String sql = "DELETE FROM 联系方式 WHERE NAME ='"+dname+"'";
						db.executeUpdate(sql);
						try{
							lname = PhoneBook.getNamePanel().getAllName();	
							list.setSelectedIndex(0);
							PhoneBook.getMainPanel().setFieldText("","","","","","","","");
							list.setListData(lname);			
						}
						catch(Exception e){}
					}
				}
				else{
					JOptionPane.showMessageDialog(null,"必须先选定才能删除!","提示",JOptionPane.INFORMATION_MESSAGE);
				}
				PhoneBook.refresh();
			
		}
	}
	
	class Alter implements ActionListener{
		private JList list;
		private String name[],lname[];
		private DbOperation db;
		private MainPanel panel;
		private String nameKey;
		
		public Alter(){
			list = PhoneBook.getList();
			
			db = new DbOperation();
			panel = PhoneBook.getMainPanel();
		}
		
		public void actionPerformed(ActionEvent event){
			name = PhoneBook.getNamePanel().getAllName();
			if(event.getActionCommand().equals("修改")){
				nameKey = PhoneBook.getSelectedText();
				if(nameKey.equals("")){
					JOptionPane.showMessageDialog(null,"请先选择要修改的联系人!","提示",JOptionPane.INFORMATION_MESSAGE);
				}
				else{
					setAlterButtonText("保存修改");
					panel.setEditable(true,false);	
				}
			}
			else if(event.getActionCommand().equals("保存修改")){
				setAlterButtonText("修改");
				panel.setEditable(false,false);
				
				String num1 = panel.getNum1Text().trim();
				String num2 = panel.getNum2Text().trim();
				String num3 = panel.getNum3Text().trim();
				String mail = panel.getMailText().trim();
				String qq = panel.getQqText().trim();
				String workunit = panel.getWorkunitText().trim();
				String address = panel.getAddressText().trim();
				String sql = "UPDATE 联系方式 SET NUM1 ='"+num1+"',NUM2='"+num2+"',NUM3='"+num3+"',MAIL='"+mail+"',QQ='"+qq+"',WORKUNIT='"+workunit+"',ADDRESS='"+address+"' WHERE NAME='"+nameKey+"'";
				db.executeUpdate(sql);
				}
			}
		}

	class Add implements ActionListener{
		private MainPanel panel;
		private DbOperation db;
		private String[] lname;
		private JList list;
		public Add(){
			panel = new MainPanel();
			panel.setEditable(true,true);
			db = new DbOperation();
		}
		public void actionPerformed(ActionEvent event){
			list = PhoneBook.getNamePanel().getNameList();
			panel.setFieldText("","","","","","","","");
			int option = JOptionPane.showConfirmDialog(null,panel,"添加联系人",JOptionPane.OK_CANCEL_OPTION,JOptionPane.PLAIN_MESSAGE);
			if(option == JOptionPane.OK_OPTION){
				String name = panel.getNameText().trim();
				if(name.equals("")){
					JOptionPane.showMessageDialog(null,"您必须输入姓名","提示",JOptionPane.INFORMATION_MESSAGE);
				}
				else{
					String num1 = panel.getNum1Text().trim();
					String num2 = panel.getNum2Text().trim();
					String num3 = panel.getNum3Text().trim();
					String mail = panel.getMailText().trim();
					String qq = panel.getQqText().trim();
					String workunit = panel.getWorkunitText().trim();
					String address = panel.getAddressText().trim();
					String sql = "INSERT INTO 联系方式 VALUES('"+name+"','"+num1+"','"+num2+"','"+num3+"','"+mail+"','"+qq+"','"+workunit+"','"+address+"')";
					db.executeUpdate(sql);
					lname = PhoneBook.getNamePanel().getAllName();
					list.setListData(lname);
				}
			}
			PhoneBook.refresh();
		}
	}
}

⌨️ 快捷键说明

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