📄 dealpanel.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 + -