名片夹管理 开发应用必备java经典.docx

上传人:b****0 文档编号:9030902 上传时间:2023-05-16 格式:DOCX 页数:28 大小:22.60KB
下载 相关 举报
名片夹管理 开发应用必备java经典.docx_第1页
第1页 / 共28页
名片夹管理 开发应用必备java经典.docx_第2页
第2页 / 共28页
名片夹管理 开发应用必备java经典.docx_第3页
第3页 / 共28页
名片夹管理 开发应用必备java经典.docx_第4页
第4页 / 共28页
名片夹管理 开发应用必备java经典.docx_第5页
第5页 / 共28页
名片夹管理 开发应用必备java经典.docx_第6页
第6页 / 共28页
名片夹管理 开发应用必备java经典.docx_第7页
第7页 / 共28页
名片夹管理 开发应用必备java经典.docx_第8页
第8页 / 共28页
名片夹管理 开发应用必备java经典.docx_第9页
第9页 / 共28页
名片夹管理 开发应用必备java经典.docx_第10页
第10页 / 共28页
名片夹管理 开发应用必备java经典.docx_第11页
第11页 / 共28页
名片夹管理 开发应用必备java经典.docx_第12页
第12页 / 共28页
名片夹管理 开发应用必备java经典.docx_第13页
第13页 / 共28页
名片夹管理 开发应用必备java经典.docx_第14页
第14页 / 共28页
名片夹管理 开发应用必备java经典.docx_第15页
第15页 / 共28页
名片夹管理 开发应用必备java经典.docx_第16页
第16页 / 共28页
名片夹管理 开发应用必备java经典.docx_第17页
第17页 / 共28页
名片夹管理 开发应用必备java经典.docx_第18页
第18页 / 共28页
名片夹管理 开发应用必备java经典.docx_第19页
第19页 / 共28页
名片夹管理 开发应用必备java经典.docx_第20页
第20页 / 共28页
亲,该文档总共28页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

名片夹管理 开发应用必备java经典.docx

《名片夹管理 开发应用必备java经典.docx》由会员分享,可在线阅读,更多相关《名片夹管理 开发应用必备java经典.docx(28页珍藏版)》请在冰点文库上搜索。

名片夹管理 开发应用必备java经典.docx

名片夹管理开发应用必备java经典

packagecom.xjj;

importjavax.swing.UIManager;

/**

*

*名片夹管理系统入口类

*

*/

publicclassCardcaseManageSystemEntry{

publicstaticvoidmain(String[]args){

UIManager.put("swing.boldMetal",Boolean.FALSE);

try{

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());

}catch(Exceptione){

}

newMainJFrame("名片夹管理系统");

}

}

packagecom.xjj;

importjava.awt.BorderLayout;

importjava.awt.Color;

importjava.awt.Dimension;

importjava.awt.FlowLayout;

importjava.awt.Toolkit;

importjava.awt.event.ActionEvent;

importjava.awt.event.ActionListener;

importjava.awt.event.WindowAdapter;

importjava.awt.event.WindowEvent;

importjavax.swing.Box;

importjavax.swing.JButton;

importjavax.swing.JDialog;

importjavax.swing.JFrame;

importjavax.swing.JLabel;

importjavax.swing.JPanel;

importjavax.swing.JTextField;

/**

*

*添加修改联系人对话框类

*

*/

@SuppressWarnings("serial")

classLinkmanAddModifyJDialogextendsJDialogimplementsActionListener{

//联系人信息文本框数组

JTextField[]fieldsJTextField=newJTextField[8];

//确定、取消按钮

JButtonconfirmJButton,cancelJButton;

//对话框返回标志变量,true表示用户选择确定,否则选择取消

booleanflag=true;

publicLinkmanAddModifyJDialog(JFramef,Strings,booleanb){

super(f,s,b);

setLayout(newBorderLayout());

BoxbaseBox,leftBox,rightBox;

//leftBox为垂直盒式布局

leftBox=Box.createVerticalBox();

leftBox.add(Box.createVerticalStrut(6));

leftBox.add(newJLabel("姓名"));

leftBox.add(Box.createVerticalStrut(11));

leftBox.add(newJLabel("性别"));

leftBox.add(Box.createVerticalStrut(11));

leftBox.add(newJLabel("工作单位"));

leftBox.add(Box.createVerticalStrut(11));

leftBox.add(newJLabel("职务"));

leftBox.add(Box.createVerticalStrut(11));

leftBox.add(newJLabel("办公电话"));

leftBox.add(Box.createVerticalStrut(11));

leftBox.add(newJLabel("手机"));

leftBox.add(Box.createVerticalStrut(11));

leftBox.add(newJLabel("住宅电话"));

leftBox.add(Box.createVerticalStrut(11));

leftBox.add(newJLabel("电子邮件"));

for(inti=0;i

intfieldslength;

//姓别文本框长度为10

if(i==1)

fieldslength=10;

//工作单位、电子邮件文本框长度为40

elseif(i==2||i==7)

fieldslength=40;

//其他文本框长度为20

else

fieldslength=20;

fieldsJTextField[i]=newJTextField(fieldslength);

}

//rightBox为垂直盒式布局

rightBox=Box.createVerticalBox();

rightBox.add(Box.createVerticalStrut(10));

//联系人文本框容器面板数组

JPanel[]fieldsJTextFieldJPanel=newJPanel[8];

for(inti=0;i<8;i++){

fieldsJTextFieldJPanel[i]=newJPanel();

fieldsJTextFieldJPanel[i].setLayout(newFlowLayout(FlowLayout.LEFT,

0,0));

fieldsJTextFieldJPanel[i].add(fieldsJTextField[i]);

//姓名文本框后的“*”标签

if(i==0){

JLabeljlabel=newJLabel("*");

jlabel.setForeground(Color.red);

fieldsJTextFieldJPanel[i].add(jlabel);

}

rightBox.add(fieldsJTextFieldJPanel[i]);

rightBox.add(Box.createVerticalStrut(5));

}

//baseBox为水平盒式布局

baseBox=Box.createHorizontalBox();

baseBox.add(leftBox);

baseBox.add(rightBox);

add(baseBox,"Center");

JPanelsouthJPanel=newJPanel();

confirmJButton=newJButton("确定");

cancelJButton=newJButton("取消");

confirmJButton.addActionListener(this);

cancelJButton.addActionListener(this);

southJPanel.add(confirmJButton);

southJPanel.add(cancelJButton);

add(southJPanel,"South");

setSize(360,285);

setResizable(false);

Toolkittool=getToolkit();

Dimensiond1=tool.getScreenSize();

Dimensiond2=this.getSize();

//设置显示位置为屏幕中心

setLocation((d1.width-d2.width)/2,(d1.height-d2.height)/2);

//关闭对话框时,设置标志变量为false

addWindowListener(newWindowAdapter(){

publicvoidwindowClosing(WindowEvente){

flag=false;

setVisible(false);

}

});

}

/**

*

*确定、取消按钮命令处理

*单击确定,flag为true

*单击取消,flag为false

*

*/

publicvoidactionPerformed(ActionEvente){

if(e.getSource()==confirmJButton){

flag=true;

}else{

flag=false;

}

setVisible(false);

}

/**

*

*清除文本框内容

*

*/

publicvoidclearJTextFieldData(){

for(inti=0;i

fieldsJTextField[i].setText("");

}

}

}

packagecom.xjj;

importjava.awt.BorderLayout;

importjava.awt.Dimension;

importjava.awt.Toolkit;

importjava.awt.event.ActionEvent;

importjava.awt.event.ActionListener;

importjava.util.Enumeration;

importjava.util.Hashtable;

importjava.util.Vector;

importjavax.swing.BorderFactory;

importjavax.swing.JButton;

importjavax.swing.JFrame;

importjavax.swing.JOptionPane;

importjavax.swing.JPanel;

importjavax.swing.JScrollPane;

importjavax.swing.JTree;

importjavax.swing.ListSelectionModel;

importjavax.swing.event.TreeSelectionEvent;

importjavax.swing.event.TreeSelectionListener;

importjavax.swing.table.DefaultTableModel;

importjavax.swing.tree.DefaultMutableTreeNode;

importjavax.swing.tree.DefaultTreeModel;

importjavax.swing.tree.TreePath;

importjavax.swing.tree.TreeSelectionModel;

/**

*

*名片夹管理系统主窗口类

*

*/

@SuppressWarnings("serial")

publicclassMainJFrameextendsJFrame{

//名片夹散列表,保存名片夹名称及联系人表格行向量

//名片夹名称为关键字,联系人表格行向量为键值

HashtablecardcaseHashtable;

//联系人表格标题向量

VectorlinkmanColumnNamesVector;

//联系人表格行向量

VectorlinkmanRowVector;

//联系人表格行数据向量

VectorlinkmanRowDataVector;

//名片夹新建按钮

JButtoncardcaseNewJButton;

//名片夹修改按钮

JButtoncardcaseModifyJButton;

//名片夹删除按钮

JButtoncardcaseDeleteJButton;

//联系人添加按钮

JButtonlinkmanAddJButton;

//联系人修改按钮

JButtonlinkmanModifyJButton;

//联系人删除按钮

JButtonlinkmanDeleteJButton;

//名片夹容器面板

JPanelcardcaseJPanel;

//名片夹树

JTreecardcaseJTree;

//名片夹树模型

DefaultTreeModelcardcaseDefaultTreeModel;

//名片夹树根节点

DefaultMutableTreeNodecardcaseRoot;

//联系人自定义表格

MyJTablelinkmanMyJTable;

//联系人自定义表格模型

DefaultTableModeldefaultTableModel;

//联系人添加修改对话框

LinkmanAddModifyJDialoglinkmanAddModifyJDialog;

publicMainJFrame(Stringtitle){

setTitle(title);

//初始化数据

initData();

setLayout(newBorderLayout());

cardcaseJPanel=newJPanel();

cardcaseJPanel.setLayout(newBorderLayout());

cardcaseJPanel.setBorder(BorderFactory.createLoweredBevelBorder());

//获取名片夹散列表关键字枚举

Enumerationenumeration=cardcaseHashtable.keys();

//创建名片夹根节点

cardcaseRoot=newDefaultMutableTreeNode("名片夹");

//创建名片夹树模型

cardcaseDefaultTreeModel=newDefaultTreeModel(cardcaseRoot);

//创建名片夹树

cardcaseJTree=newJTree(cardcaseDefaultTreeModel);

//向名片夹树添加子节点,名称为名片夹散列表关键字

while(enumeration.hasMoreElements()){

cardcaseRoot.add(newDefaultMutableTreeNode(enumeration

.nextElement()));

}

//名片夹树选择动作监听器

CardcaseTreeSelectionListenerctsl=newCardcaseTreeSelectionListener();

cardcaseJTree.addTreeSelectionListener(ctsl);

//名片夹树设为单选模式

cardcaseJTree.getSelectionModel().setSelectionMode(

TreeSelectionModel.SINGLE_TREE_SELECTION);

//名片夹树添加至名片夹滚动面板

JScrollPanecardcaseJScrollPane=newJScrollPane(cardcaseJTree);

cardcaseJPanel.add(cardcaseJScrollPane,"Center");

//名片夹按钮动作监听器

CardcaseJButtonActionListenercjbal=newCardcaseJButtonActionListener();

JPanelcardcaseSouthJPanel=newJPanel();

cardcaseNewJButton=newJButton("新建");

cardcaseModifyJButton=newJButton("修改");

cardcaseDeleteJButton=newJButton("删除");

cardcaseNewJButton.addActionListener(cjbal);

cardcaseModifyJButton.addActionListener(cjbal);

cardcaseDeleteJButton.addActionListener(cjbal);

cardcaseSouthJPanel.add(cardcaseNewJButton);

cardcaseSouthJPanel.add(cardcaseModifyJButton);

cardcaseSouthJPanel.add(cardcaseDeleteJButton);

cardcaseJPanel.add(cardcaseSouthJPanel,"South");

add(cardcaseJPanel,"West");

JPanellinkmanJPanel=newJPanel();

linkmanJPanel.setLayout(newBorderLayout());

linkmanJPanel.setBorder(BorderFactory.createLoweredBevelBorder());

//创建联系人自定义表格模型

defaultTableModel=newDefaultTableModel(cardcaseHashtable.get(""),

linkmanColumnNamesVector);

//创建联系人自定义表格

linkmanMyJTable=newMyJTable(defaultTableModel);

//设置联系人自定义表格选择模式为单选

linkmanMyJTable.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);

//联系人自定义表格添加至联系人滚动面板

JScrollPanelinkmanJScrollPane=newJScrollPane(linkmanMyJTable);

linkmanJPanel.add(linkmanJScrollPane,"Center");

//联系人按钮动作监听器

LinkmanJButtonActionListenerljbal=newLinkmanJButtonActionListener();

JPanellinkmanSouthJPanel=newJPanel();

linkmanAddJButton=newJButton("添加");

linkmanModifyJButton=newJButton("修改");

linkmanDeleteJButton=newJButton("删除");

linkmanAddJButton.addActionListener(ljbal);

linkmanModifyJButton.addActionListener(ljbal);

linkmanDeleteJButton.addActionListener(ljbal);

linkmanSouthJPanel.add(linkmanAddJButton);

linkmanSouthJPanel.add(linkmanModifyJButton);

linkmanSouthJPanel.add(linkmanDeleteJButton);

linkmanJPanel.add(linkmanSouthJPanel,"South");

add(linkmanJPanel,"Center");

setSize(800,400);

Toolkittool=getToolkit();

Dimensiond1=tool.getScreenSize();

Dimensiond2=this.getSize();

//设置显示位置为屏幕中心

setLocation((d1.width-d2.width)/2,(d1.height-d2.height)/2);

setVisible(true);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

//重新装入名片夹树模型

cardcaseDefaultTreeModel.reload();

//设置名片夹树第一个子节点为选中状态

cardcaseJTree.setSelectionRow

(1);

//创建联系人添加修改对话框

linkmanAddModifyJDialog=newLinkmanAddModifyJDialog(null,"",true);

}

/**

*

*初始化数据

*

*/

privatevoidinitData(){

//联系人数组

String[][][]linkman={

{

{"赵一","男","A公司","经理","89******","138********",

"24******","zy@***.com"},

{"钱二","男","B学校","教师","56******","130********",

"65******","qr@*

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2