java课程设计--- 个人通讯录管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计(论文)任务书
设计题目:个人通讯录管理系统
专业班级:10计算机科学与技术2班
主要内容:
设计GUI界面的个人通讯录,用户可以添加,删除,修改,查询,打印通讯录中的记录!
采用图形用户界面,通过菜单选择相应的操作,直观且操作简单。
数据库用MySQL;编辑平台选用MyEclipse 。
所用到的知识点有:类的基本构成,异常处理,图形用户界面,文件操作和数据库。
基本要求:
用图形用户界面实现,能实现增加记录,删除记录,显示所有记录,查询记录,文件备份。
通讯录的功能包括:姓名,电话,Email 等。
使用数据库做后台连接!
1
目录
一、开发背景 (1)
二、可行分析 (1)
三、设计内容……………………………………………………………………….错误!未定义书签。
四、设计要求……………………………………………………………………….错误!未定义书签。
五、具体设计 (4)
六、具体分工 (5)
七、程序设计 (9)
1、主程序模块…………………………………………………….....…........1错
误!未定义书签。
1、添加模块…………………………………………………….....…........1错误!
未定义书签。
2、删除模块 (22)
4、背景框格设计 (32)
八、实习心得 (35)
2
一、开发背景
在信息化不断发展的今天,社会成员相互之间联系越来越紧密,联系方式也越来越多。
我们除了手机,移动电话等常规联系方式外,现在还有了电子邮箱、MSN、QQ等信息化的联系方式,那么为了方便我们将每个联系人的多个联系方式保存在一起,方便由于一种联系方式联系不到某人时,可查询其他联系方式,以前的“纸质”通讯录已经越来越赶不上信息化的速度,势必被淘汰,所以我们用所学过的知识实现一个“非纸质”通讯录。
二、可行分析
介绍了一个简单实用的个人通讯录管理系统java工程,详细描述了本人在编程时候的编程思想和在MyEclipse 6.5中调试运行的步骤,简明扼要地介绍了整个工程的功能和实用方法。
这个个人通讯录管理系统含有添加、删除、查找等基本功能,同时也添加了一些有趣的小功能--支持背景图片的更换。
在程序中完成了与数据库的通信,并同样可以对数据库进行添加、查找、删除等功能。
三、设计内容
设计GUI界面的个人通讯录,用户可以添加,删除,修改,查询,打印通讯录中的记录!
四,设计要求
用图形用户界面实现:
1、能实现增加记录,删除记录,显示所有记录,查询记录,文件备份。
2、通讯录的功能包括:姓名,电话,Email等。
3、使用数据库做后台连接!
3
五、具体设计
文件分别编译生成相应的字节码(class)文件。
然后,用java解释器运行主类:
主界面
4
六、具体分工
我参与设计添加页面,添加方法,删除页面,查询部分操作资以及源管理模块,背景框格布局操作。
添加界面
5
6
7
删除界面
8
七、程序设计
1. 主程序设计模块
package com.zzk.frame;
import java.awt.BorderLayout;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import .URL;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JToolBar;
import javax.swing.SwingConstants;
import javax.swing.WindowConstants;
import com.swtdesigner.SwingResourceManager;
import com.zzk.background.BackgroundPanel;
import com.zzk.typestate.SaveTypeState;
public class MainFrame extends JFrame {
public MainFrame() {
super();
setTitle("通讯录管理系统");
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); setBounds(100,60,800,600);
URL url = LoginFrame.class.getResource("/image/main.jpg");
9
// 获得图片的URL
Image image=new ImageIcon(url).getImage(); // 创建图像对象BackgroundPanel gbPanel=new BackgroundPanel(image);// 创建背景面板
getContentPane().add(gbPanel); // 将背景面板添加到窗体容器中部final JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
final JMenu menu_1 = new JMenu();
menu_1.setText("家人");menuBar.add(menu_1);
final JMenuItem newItemMenuItem_4=new JMenuItem();
newItemMenuItem_4.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) { SaveTypeState.setTypeState("家人"); // 设置分类信息为“家人”SaveTypeState.setTitleState("添加家人信息模块"); // 主置添加信息窗体标题为“添加家人信息模块”
SaveTypeState.setLableState("添加家人信息界面"); // 设置添加信息窗体上标签的标题信息为“添加家人信息界面”AddMessageFrame frame = new AddMessageFrame(); // 创建添加信息窗体对象
frame.setVisible(true); // 显示添加信息窗体
}});
newItemMenuItem_4.setText("添加信息");
menu_1.add(newItemMenuItem_4);
final JMenuItem newItemMenuItem_5 = new JMenuItem();
newItemMenuItem_5.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("家人"); // 设置分类信息为“家人”
10
SaveTypeState.setTitleState("修改家人信息模块"); // 主置修改信息窗体标题为“修改家人信息模块”
SaveTypeState.setLableState("修改家人信息界面"); // 设置修改信息窗体上标签的标题信息为“修改家人信息界面”
UpdateMessageFrame dialog = new UpdateMessageFrame(); // 创建修改信息窗体对象
dialog.setVisible(true); // 显示修改信息窗体
} });
newItemMenuItem_5.setText("修改信息");
menu_1.add(newItemMenuItem_5);
final JMenuItem newItemMenuItem_6 = new JMenuItem();
newItemMenuItem_6.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("家人"); // 设置分类信息为“家人”
SaveTypeState.setTitleState("删除家人信息模块");
SaveTypeState.setLableState("删除家人信息界面");
DeleteMessageFrame
dialog = new DeleteMessageFrame();dialog.setVisible(true); } });
newItemMenuItem_6.setText("删除信息");
menu_1.add(newItemMenuItem_6);
final JMenuItem newItemMenuItem_7 = new JMenuItem();
newItemMenuItem_7.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("家人"); // 设置分类信息为“家人”
SaveTypeState.setTitleState("查询家人信息模块");
SaveTypeState.setLableState("查询家人信息界面");
QueryMessageFrame dialog = new QueryMessageFrame();
11
dialog.setVisible(true); // 显示查询信息窗体
} });
newItemMenuItem_7.setText("查询信息");
menu_1.add(newItemMenuItem_7);
final JMenu menu_2 = new JMenu();
menu_2.setText("朋友");
menuBar.add(menu_2);
final JMenuItem newItemMenuItem_8 = new JMenuItem();
newItemMenuItem_8.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("朋友"); // 设置分类信息为“朋友”
SaveTypeState.setTitleState("添加朋友信息模块");
SaveTypeState.setLableState("添加朋友信息界面");
AddMessageFrame frame = new AddMessageFrame();
frame.setVisible(true); // 显示添加信息窗体
} });
newItemMenuItem8.setText("添加信息");
menu_2.add(newItemMenuItem_8);
final JMenuItem newItemMenuItem_9 = new JMenuItem();
newItemMenuItem_9.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("朋友"); // 设置分类信息为“朋友
SaveTypeState.setTitleState("修改朋友信息模块"); // 主置修改信息窗体标题为“修改朋友信息模块”
SaveTypeState.setLableState("修改朋友信息界面"); // 设置修改信息窗体上标签的标题信息为“修改朋友信息界面”
UpdateMessageFrame dialog = new UpdateMessageFrame(); // 创建
12
修改信息窗体对象
dialog.setVisible(true); // 显示修改信息窗体
} });
newItemMenuItem_9.setText("修改信息");
menu_2.add(newItemMenuItem_9);
final JMenuItem newItemMenuItem_10 = new JMenuItem();
newItemMenuItem_10.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("朋友"); // 设置分类信息为“朋友”
SaveTypeState.setTitleState("删除朋友信息模块"); // 主置删除信息窗体标题为“删除朋友信息模块”
SaveTypeState.setLableState("删除朋友信息界面"); // 设置删除信息窗体上标签的标题信息为“删除朋友信息界面”
DeleteMessageFrame dialog = new DeleteMessageFrame(); // 创建删除信息窗体对象
dialog.setVisible(true); // 显示删除信息窗体
} });
newItemMenuItem_10.setText("删除信息");
menu_2.add(newItemMenuItem_10);
final JMenuItem newItemMenuItem_11 = new JMenuItem();
newItemMenuItem_11.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("朋友"); // 设置分类信息为“朋友”
SaveTypeState.setTitleState("查询朋友信息模块"); // 主置查询信息窗体标题为“查询朋友信息模块”
SaveTypeState.setLableState("查询朋友信息界面"); // 设置查询信息窗体上标签的标题信息为“查询朋友信息界面”
13
QueryMessageFrame dialog = new QueryMessageFrame(); // 创建查询信息窗体对象
dialog.setVisible(true); // 显示查询信息窗体
} });
newItemMenuItem_11.setText("查询信息");
menu_2.add(newItemMenuItem_11);
final JMenu menu_3 = new JMenu();
menu_3.setText("同学");
menuBar.add(menu_3);
final JMenuItem newItemMenuItem_12 = new JMenuItem();
newItemMenuItem_12.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("同学"); // 设置分类信息为“同学”
SaveTypeState.setTitleState("添加同学信息模块"); // 主置添加信息窗体标题为“添加同学信息模块”
SaveTypeState.setLableState("添加同学信息界面"); // 设置添加信息窗体上标签的标题信息为“添加同学信息界面”
AddMessageFrame frame = new AddMessageFrame(); // 创建添加信息窗体对象
frame.setVisible(true); // 显示添加信息窗体
} });
newItemMenuItem_12.setText("添加信息");
menu_3.add(newItemMenuItem_12);
final JMenuItem newItemMenuItem_13 = new JMenuItem();
newItemMenuItem_13.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
14
SaveTypeState.setTypeState("同学"); // 设置分类信息为“同学”
SaveTypeState.setTitleState("修改同学信息模块"); // 主置修改信息窗体标题为“修改同学信息模块”
SaveTypeState.setLableState("修改同学信息界面"); // 设置修改信息窗体上标签的标题信息为“修改同学信息界面”
UpdateMessageFrame dialog = new UpdateMessageFrame(); // 创建修改信息窗体对象
dialog.setVisible(true); // 显示修改信息窗体
} });
newItemMenuItem_13.setText("修改信息");
menu_3.add(newItemMenuItem_13);
final JMenuItem newItemMenuItem_14 = new JMenuItem();
newItemMenuItem_14.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("同学"); // 设置分类信息为“同学”
SaveTypeState.setTitleState("删除同学信息模块"); // 主置删除信息窗体标题为“删除同学信息模块”
SaveTypeState.setLableState("删除同学信息界面"); // 设置删除信息窗体上标签的标题信息为“删除同学信息界面”
DeleteMessageFrame dialog = new DeleteMessageFrame(); // 创建删除信息窗体对象
dialog.setVisible(true); // 显示删除信息窗体
} });
newItemMenuItem_14.setText("删除信息");
menu_3.add(newItemMenuItem_14);
final JMenuItem newItemMenuItem_15 = new JMenuItem();
newItemMenuItem_15.addActionListener(new ActionListener() {
15
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("同学"); // 设置分类信息为“同学”
SaveTypeState.setTitleState("查询同学信息模块"); // 主置查询信息窗体标题为“查询同学信息模块”
SaveTypeState.setLableState("查询同学信息界面"); // 设置查询信息窗体上标签的标题信息为“查询同学信息界面”
QueryMessageFrame dialog = new QueryMessageFrame(); // 创建查询信息窗体对象
dialog.setVisible(true); // 显示查询信息窗体
} });
newItemMenuItem_15.setText("查询信息");
menu_3.add(newItemMenuItem_15);
final JMenu menu_4 = new JMenu();
menu_4.setText("同事");
menuBar.add(menu_4);
final JMenuItem newItemMenuItem_16 = new JMenuItem();
newItemMenuItem_16.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("同事"); // 设置分类信息为“同事”
SaveTypeState.setTitleState("添加同事信息模块"); // 主置添加信息窗体标题为“添加同事信息模块”
SaveTypeState.setLableState("添加同事信息界面"); // 设置添加信息窗体上标签的标题信息为“添加同事信息界面”
AddMessageFrame frame = new AddMessageFrame(); // 创建添加信息窗体对象
frame.setVisible(true); // 显示添加信息窗体
16
}});
newItemMenuItem_16.setText("添加信息");
menu_4.add(newItemMenuItem_16);
final JMenuItem newItemMenuItem_17 = new JMenuItem();
newItemMenuItem_17.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("同事"); // 设置分类信息为“同事”
SaveTypeState.setTitleState("修改同事信息模块"); // 主置修改信息窗体标题为“修改同事信息模块”
SaveTypeState.setLableState("修改同事信息界面"); // 设置修改信息窗体上标签的标题信息为“修改同事信息界面”
UpdateMessageFrame dialog = new UpdateMessageFrame(); // 创建修改信息窗体对象
dialog.setVisible(true); // 显示修改信息窗体
} });
newItemMenuItem_17.setText("修改信息");
menu_4.add(newItemMenuItem_17);
final JMenuItem newItemMenuItem_18 = new JMenuItem();
newItemMenuItem_18.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("同事"); // 设置分类信息为“同事”
SaveTypeState.setTitleState("删除同事信息模块"); // 主置删除信息窗体标题为“删除同事信息模块”
SaveTypeState.setLableState("删除同事信息界面"); // 设置删除信息窗体上标签的标题信息为“删除同事信息界面”
DeleteMessageFrame dialog = new DeleteMessageFrame(); // 创建删除信息窗体对象
17
dialog.setVisible(true); // 显示删除信息窗体
} });
newItemMenuItem_18.setText("删除信息");
menu_4.add(newItemMenuItem_18);
final JMenuItem newItemMenuItem_19 = new JMenuItem();
newItemMenuItem_19.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("同事"); // 设置分类信息为“同事”
SaveTypeState.setTitleState("查询同事信息模块"); // 主置查询信息窗体标题为“查询同事信息模块”
SaveTypeState.setLableState("查询同事信息界面"); // 设置查询信息窗体上标签的标题信息为“查询同事信息界面”
QueryMessageFrame dialog = new QueryMessageFrame(); // 创建查询信息窗体对象
dialog.setVisible(true); // 显示查询信息窗体
}});
newItemMenuItem_19.setText("查询信息");
menu_4.add(newItemMenuItem_19);
final JMenu menu_5 = new JMenu();
menu_5.setText("其他");、
menuBar.add(menu_5);
final JMenuItem newItemMenuItem_20 = new JMenuItem();
newItemMenuItem_20.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("其他"); // 设置分类信息为“其他”
SaveTypeState.setTitleState("添加其他信息模块"); // 主置添加信息窗体标题为“添加其他信息模块”
18
SaveTypeState.setLableState("添加其他信息界面"); // 设置添加信息窗体上标签的标题信息为“添加其他信息界面”
AddMessageFrame frame = new AddMessageFrame(); // 创建添加信息窗体对象
frame.setVisible(true); // 显示添加信息窗体
}});
newItemMenuItem_20.setText("添加信息");
menu_5.add(newItemMenuItem_20);
final JMenuItem newItemMenuItem_21 = new JMenuItem();
newItemMenuItem_21.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("其他"); // 设置分类信息为“其他”
SaveTypeState.setTitleState("修改其他信息模块"); // 主置修改信息窗体标题为“修改其他信息模块”
SaveTypeState.setLableState("修改其他信息界面"); // 设置修改信息窗体上标签的标题信息为“修改其他信息界面”
UpdateMessageFrame dialog = new UpdateMessageFrame(); // 创建修改信息窗体对象
dialog.setVisible(true); // 显示修改信息窗体
} });
newItemMenuItem21.setText("修改信息");
menu_5.add(newItemMenuItem_21);
final JMenuItem newItemMenuItem_22 = new JMenuItem();
newItemMenuItem_22.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("其他"); // 设置分类信息为“其他”
SaveTypeState.setTitleState("删除其他信息模块"); // 主置
19
删除信息窗体标题为“删除其他信息模块”
SaveTypeState.setLableState("删除其他信息界面"); // 设置删除信息窗体上标签的标题信息为“删除其他信息界面”
DeleteMessageFrame dialog = new DeleteMessageFrame(); // 创建删除信息窗体对象
dialog.setVisible(true); // 显示删除信息窗体
}});
newItemMenuItem_22.setText("删除信息");
menu_5.add(newItemMenuItem_22);
final JMenuItem newItemMenuItem_23 = new JMenuItem();
newItemMenuItem_23.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("其他"); // 设置分类信息为“其他”
SaveTypeState.setTitleState("查询其他信息模块"); // 主置查询信息窗体标题为“查询其他信息模块”
SaveTypeState.setLableState("查询其他信息界面"); // 设置查询信息窗体上标签的标题信息为“查询其他信息界面”
QueryMessageFrame dialog = new QueryMessageFrame(); // 创建查询信息窗体对象
dialog.setVisible(true); // 显示查询信息窗体
} });
newItemMenuItem_23.setText("查询信息");
menu_5.add(newItemMenuItem_23);
final JToolBar toolBar = new JToolBar();
getContentPane().add(toolBar, BorderLayout.NORTH);
final JButton button = new JButton();
button.setRolloverIcon(SwingResourceManager.getIcon(MainFrame.
20
class, "/image/001.jpg"));
button.setIcon(SwingResourceManager.getIcon(MainFrame.class, "/image/01.jpg"));
button.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("家人"); // 设置分类信息为“家人”
SaveTypeState.setTitleState("查询家人信息模块"); // 主置查询信息窗体标题为“查询家人信息模块”
SaveTypeState.setLableState("查询家人信息界面"); // 设置查询信息窗体上标签的标题信息为“查询家人信息界面”QueryMessageFrame dialog = new QueryMessageFrame(); // 创建查询信息窗体对象
dialog.setVisible(true); // 显示查询信息窗体
} });
button.setHorizontalTextPosition(SwingConstants.CENTER);
button.setVerticalTextPosition(SwingConstants.BOTTOM);
toolBar.add(button);
final JButton button_1 = new JButton();
button_1.setRolloverIcon(SwingResourceManager.getIcon(MainFram e.class, "/image/002.jpg"));
button_1.setIcon(SwingResourceManager.getIcon(MainFrame.class, "/image/02.jpg"));
button_1.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("朋友"); // 设置分类信息为“朋友”
SaveTypeState.setTitleState("查询朋友信息模块"); // 主置查询信息窗体标题为“查询朋友信息模块”
21
SaveTypeState.setLableState("查询朋友信息界面"); // 设置查询信息窗体上标签的标题信息为“查询朋友信息界面”
QueryMessageFrame dialog = new QueryMessageFrame(); // 创建查询信息窗体对象
dialog.setVisible(true); // 显示查询信息窗体
} });
button_1.setVerticalTextPosition(SwingConstants.BOTTOM);
button_1.setHorizontalTextPosition(SwingConstants.CENTER);
toolBar.add(button_1);
final JButton button_2 = new JButton();
button_2.setRolloverIcon(SwingResourceManager.getIcon(MainFram e.class, "/image/003.jpg"));
button_2.setIcon(SwingResourceManager.getIcon(MainFrame.class, "/image/03.jpg"));
button_2.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("同学"); // 设置分类信息为“同学”
SaveTypeState.setTitleState("查询同学信息模块"); // 主置查询信息窗体标题为“查询同学信息模块”
SaveTypeState.setLableState("查询同学信息界面"); // 设置查询信息窗体上标签的标题信息为“查询同学信息界面”
QueryMessageFrame dialog = new QueryMessageFrame(); // 创建查询信息窗体对象
dialog.setVisible(true); // 显示查询信息窗体
} });
button_2.setVerticalTextPosition(SwingConstants.BOTTOM);
button_2.setHorizontalTextPosition(SwingConstants.CENTER);
22
toolBar.add(button_2);
final JButton button_3 = new JButton();
button_3.setRolloverIcon(SwingResourceManager.getIcon(MainFram e.class, "/image/004.jpg"));
button_3.setIcon(SwingResourceManager.getIcon(MainFrame.class, "/image/04.jpg"));
button_3.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
SaveTypeState.setTypeState("同事"); // 设置分类信息为“同事”
SaveTypeState.setTitleState("查询同事信息模块"); // 主置查询信息窗体标题为“查询同事信息模块”
SaveTypeState.setLableState("查询同事信息界面"); // 设置查询信息窗体上标签的标题信息为“查询同事信息界面”
QueryMessageFrame dialog = new QueryMessageFrame(); // 创建查询信息窗体对象
dialog.setVisible(true); // 显示查询信息窗体
}});
button_3.setVerticalTextPosition(SwingConstants.BOTTOM);
button_3.setHorizontalTextPosition(SwingConstants.CENTER);
toolBar.add(button_3);
final JButton button_5 = new JButton();
button_5.setRolloverIcon(SwingResourceManager.getIcon(MainFram e.class, "/image/005.jpg"));
button_5.setIcon(SwingResourceManager.getIcon(MainFrame.class, "/image/05.jpg"));
button_5.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
23
SaveTypeState.setTypeState("其他"); // 设置分类信息为“其他”
SaveTypeState.setTitleState("查询其他信息模块"); // 主置查询信息窗体标题为“查询其他信息模块”
SaveTypeState.setLableState("查询其他信息界面"); // 设置查询信息窗体上标签的标题信息为“查询其他信息界面”
QueryMessageFrame dialog = new QueryMessageFrame(); // 创建查询信息窗体对象
dialog.setVisible(true); // 显示查询信息窗体
} });
toolBar.add(button_5);
final JButton button_4 = new JButton();
button_4.setRolloverIcon(SwingResourceManager.getIcon(MainFram e.class, "/image/006.jpg"));
button_4.setIcon(SwingResourceManager.getIcon(MainFrame.class, "/image/06.jpg"));
button_4.addActionListener(new ActionListener() {
public void actionPerformed(final ActionEvent arg0) {
System.exit(0);
}});
button_4.setVerticalTextPosition(SwingConstants.BOTTOM);
button_4.setHorizontalTextPosition(SwingConstants.CENTER);
toolBar.add(button_4);}}
2.添加页面设计程序
import java.awt.Color;
import java.awt.Font;
import java.awt.event.ActionEvent;
24
import java.awt.event.ActionListener;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JRadioButton;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
import javax.swing.WindowConstants;
import com.zzk.dao.DAO;
import com.zzk.db.Message;
import com.zzk.typestate.SaveTypeState;
public class AddMessageFrame extends JDialog { private JTextArea ta_memo;
private JTextField tf_youbian;
private JTextField tf_address;
private JTextField tf_email;
private JTextField tf_qq;
private JTextField tf_shouji;
private JTextField tf_jiadian;
private JTextField tf_minzu;
private JTextField tf_date;
private ButtonGroup buttonGroup = new ButtonGroup(); private JTextField tf_name;
private JTextField tf_type;
25
public AddMessageFrame() {
super() // 调用超类的构造方法
setTitle(SaveTypeState.getTitleState()) // 设置窗体的标题,从SaveTypeState类获得
getContentPane().setLayout(null); // 设置窗体容器为绝对布局
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE );// 设置窗体的默认关闭方式
setBounds(100, 100, 518, 450); // 设置窗体的显示位置和大小
this.setModal(true); // 设置对话框窗体为模式窗体
final JLabel lb_add_title = new JLabel(); // 创建标签
lb_add_title.setHorizontalAlignment(SwingConstants.CENTER);
lb_add_title.setForeground(new Color(0, 0, 255));
lb_add_title.setFont(new Font("", Font.BOLD, 42));
lb_add_title.setText(SaveTypeState.getLableState());
lb_add_title.setBounds(34, 10, 422, 66);
getContentPane().add(lb_add_title); //
将标签添加到窗体容器中
tf_type = new JTextField(); // 创建分类文本框tf_type.setText(SaveTypeState.getTypeState());
tf_type.setBounds(345, 257, 131, 22);
getContentPane().add(tf_type);
final JLabel label = new JLabel();
label.setText("分类:");
label.setBounds(271, 259, 71, 18);
getContentPane().add(label);
final JLabel label_1 = new JLabel();
label_1.setText("姓名:");
26
label_1.setBounds(34, 82, 70, 18);
getContentPane().add(label_1);
tf_name = new JTextField();
tf_name.setBounds(107, 80, 132, 22);
getContentPane().add(tf_name);
final JLabel label_1_1 = new JLabel();
label_1_1.setText("性别:");
label_1_1.setBounds(271, 78, 70, 18);
getContentPane().add(label_1_1);
final JRadioButton rb_nan = new JRadioButton();
r b_nan.setSelected(true);
b uttonGroup.add(rb_nan);
r b_nan.setText("男");
r b_nan.setBounds(337, 74, 48, 26);
g etContentPane().add(rb_nan);
final JRadioButton rb_nv = new JRadioButton();
b uttonGroup.add(rb_nv);
r b_nv.setText("女");
r b_nv.setBounds(391, 74, 48, 26);
g etContentPane().add(rb_nv);
final JLabel label_1_2 = new JLabel();
l abel_1_2.setText("出生日期:");
l abel_1_2.setBounds(34, 118, 78, 18);
g etContentPane().add(label_1_2);
tf_date = new JTextField();
t f_date.setBounds(107, 116, 132, 22);
g etContentPane().add(tf_date);
27
f inal JLabel label_1_2_1 = new JLabel(); l abel_1_2_1.setText("民族:");
l abel_1_2_1.setBounds(271, 116, 78, 18);
g etContentPane().add(label_1_2_1);
t f_minzu = new JTextField();
t f_minzu.setBounds(344, 114, 132, 22);
g etContentPane().add(tf_minzu);
f inal JLabel label_1_3 = new JLabel();
l abel_1_3.setText("家庭电话:");
l abel_1_3.setBounds(34, 152, 70, 18);
g etContentPane().add(label_1_3);
t f_jiadian = new JTextField();
t f_jiadian.setBounds(107, 150, 132, 22);
g etContentPane().add(tf_jiadian);
f inal JLabel label_1_4 = new JLabel();
l abel_1_4.setText("手机号码:");
l abel_1_4.setBounds(271, 150, 70, 18);
g etContentPane().add(label_1_4);
t f_shouji = new JTextField();
t f_shouji.setBounds(344, 148, 132, 22);
g etContentPane().add(tf_shouji);
f inal JLabel label_1_5 = new JLabel();
l abel_1_5.setText("QQ号码:");
l abel_1_5.setBounds(34, 188, 70, 18);
g etContentPane().add(label_1_5);
t f_qq = new JTextField();
t f_qq.setBounds(107, 186, 132, 22);
28
g etContentPane().add(tf_qq);
f inal JLabel label_1_6 = new JLabel();
l abel_1_6.setText("电子信箱:");
l abel_1_6.setBounds(271, 186, 70, 18);
g etContentPane().add(label_1_6);
t f_email = new JTextField();
t f_email.setBounds(344, 184, 132, 22);
g etContentPane().add(tf_email);
f inal JLabel label_1_7 = new JLabel();
l abel_1_7.setText("家庭住址:");
l abel_1_7.setBounds(34, 223, 70, 18);
g etContentPane().add(label_1_7);
t f_address = new JTextField();
t f_address.setBounds(107, 221, 369, 22);
g etContentPane().add(tf_address);
f inal JLabel label_1_8 = new JLabel();
l abel_1_8.setText("邮政编码:");
l abel_1_8.setBounds(34, 259, 70, 18);
g etContentPane().add(label_1_8);
t f_youbian = new JTextField();
t f_youbian.setBounds(107, 257, 132, 22);
g etContentPane().add(tf_youbian);
f inal JLabel label_2 = new JLabel();
l abel_2.setText("备注:");
l abel_2.setBounds(34, 289, 66, 18);
g etContentPane().add(label_2);
f inal JScrollPane scrollPane = new JScrollPane();
29
s crollPane.setBounds(106, 289, 370, 66);
g etContentPane().add(scrollPane);
t a_memo = new JTextArea();
scrollPane.setViewportView(ta_memo);
f inal JButton button = new JButton();
b utton.addActionListener(new ActionListener() {
p ublic void actionPerformed(final ActionEvent arg0) {
S tring name=tf_name.getText(); // 获得输入的姓名
S tring sex=null; // 定义存放性别的变量
i f (rb_nan.isSelected()){ // 如果单选按钮男被选中
s ex=rb_nan.getText(); // sex为男
}else{ // 否则如果单选按钮女被选中
s ex=rb_nv.getText(); // sex为女
}String date=tf_date.getText(); // 获得输入的出生日期String minzu=tf_minzu.getText(); // 获得输入的民族String jiadian=tf_jiadian.getText(); // 获得输入的家庭电话String shouji=tf_shouji.getText(); // 获得输入的手机号码String qq=tf_qq.getText(); // 获得输入的QQ号吗String email=tf_email.getText(); // 获得输入的Email String address=tf_address.getText(); // 获得输入的家庭住址String youbian=tf_youbian.getText(); // 获得输入的邮编String mtype=tf_type.getText(); // 获得输入的分类String memo=ta_memo.getText(); // 获得输入的备注Message ms=new Message(); // 创建Message的实体对象// 将上面代码获得的输入信息为实体类的属性赋值ms.setName(name);
ms.setSex(sex);
30
ms.setBirthday(date);
ms.setNation(minzu);
ms.setZuoji(jiadian);
ms.setShouji(shouji);
ms.setQq(qq);
ms.setEmail(email);
ms.setAddress(address);
ms.setYoubian(youbian);
ms.setType(mtype);
ms.setMemo(memo);
DAO.insert(ms); // 调用公共类DAO的方法保存实体类的属性值
} });
b utton.setText("保存");
b utton.setBounds(107, 367, 106, 28);
g etContentPane().add(button);
final JButton button_1 = new JButton();
b utton_1.addActionListener(new ActionListener() {
p ublic void actionPerformed(final ActionEvent arg0) {
A ddMessageFrame.this.dispose();} });
b utton_1.setText("返回");
b utton_1.setBounds(307, 367, 106, 28);
g etContentPane().add(button_1);}}
3. 删除页面设计程序
package com.zzk.frame;
import java.awt.Color;
import java.awt.Font;
31
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.util.Vector;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.SwingConstants;
import javax.swing.WindowConstants;
import javax.swing.table.DefaultTableModel;
import com.zzk.dao.DAO;
import com.zzk.typestate.SaveTypeState;
public class DeleteMessageFrame extends JDialog {
private ButtonGroup buttonGroup = new ButtonGroup();
private JScrollPane scrollPane = new JScrollPane();
private JTable table;
private int selectRow=-1; // 保存选择行的行号
public DeleteMessageFrame() {
super();
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
// 设置对话框窗体的关闭方式
setTitle(SaveTypeState.getTitleState()); // 设置对话框窗体的标题
32
setModal(true); // 设置对话框窗体为模式对话框getContentPane().setLayout(null); // 设置对话框窗体容器为绝对布setBounds(100, 100, 687, 378); // 设置对话框窗体的显示位置和大小
final JLabel lb_delete_title = new JLabel(); // 创建标签
lb_delete_title.setHorizontalAlignment(SwingConstants.CENTER); // 设置标签上的文字在标签上居中显示
lb_delete_title.setForeground(new Color(0, 0, 255)); // 设置标签上显示的文字颜色
lb_delete_title.setFont(new Font("Dialog", Font.BOLD, 42)); // 设置标签上显示文字的字体
lb_delete_title.setText(SaveTypeState.getLableState()); // 设置标签上显示的文字,从SaveTypeState类获得
lb_delete_title.setBounds(118, 3, 422, 66); // 设置标签的显示位置和大小
getContentPane().add(lb_delete_title); // 将标签添加到窗体容器中
scrollPane.setBounds(24, 103, 627, 176);
getContentPane().add(scrollPane);// 创建表格的列名向量
Vector<String> vectorColumns=new Vector<String>();
String[] columns={"编号","姓名","性别","出生日期","民族","家庭电话","手机号码","QQ号码","电子信箱","家庭住址","邮政编码","类型","备注"};// 为表格的列名向量赋值
for (int i=0;i<columns.length;i++){
vectorColumns.add(columns[i]);}
// 通过类型查询数据表中的数据,并赋值给数据向量
Vector data=DAO.query(SaveTypeState.getTypeState());
33。