首页 c语言制作通讯录

c语言制作通讯录

举报
开通vip

c语言制作通讯录c语言制作通讯录 题目:使用NetBeans制作一个GUI(图形用户界面)通讯录 1、用NetBeans新建一个项目,名称为Notebook。 2、新建Jframe窗体,名称为NotebookView。 3、设计窗体。 采用鼠标拖动的方式,主要用到(内部框架) 面板:变量名称“MainPanel”,右键, 属性,boder,带标题的边框,标题“通讯录” 标签:名称“姓名”、“手机”、“E-mail”、“家庭住址” 变量名称“jLabelName”、“jLabelTel”、“jLabelEmail”...

c语言制作通讯录
c语言制作通讯录 题目:使用NetBeans制作一个GUI(图形用户界面)通讯录 1、用NetBeans新建一个项目,名称为Notebook。 2、新建Jframe窗体,名称为NotebookView。 3、 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 窗体。 采用鼠标拖动的方式,主要用到(内部框架) 面板:变量名称“MainPanel”,右键, 属性,boder,带标题的边框,标题“通讯录” 标签:名称“姓名”、“手机”、“E-mail”、“家庭住址” 变量名称“jLabelName”、“jLabelTel”、“jLabelEmail”、“jLabelAddress” 文本字段:变量名称“jTextName”、“jTextTel”、“jTextEmail”、“jTextAddress” 列 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf :变量名称“jListText”,右击,属性,model,删除项目,使列表初始为空 按钮:名称“增加”、“修改”、“删除”、“保存”、“退出” 变量名称“jButtonAdd”、“jButtonEdit”、“jButtonDel”、“jButtonSave”、“jButtonExit” 界面设计完成 4、新建JavaBeans组件,名称为Person。 删除类中代码,右击/插入代码/添加属性: name /tel/ email /address 5、为各个按钮添加”状态“代码,双击各个按钮即可 “退出”按钮:System.exit(-1); “增加”按钮:点击“增加”按钮后应该使文本字段为可编辑状态(且为空), 将光标置于姓名文本字段,并且“增加”、“修改”、“删除”为不可用状态, “保存”按钮为可用状态 //设置文本字段为可编辑状态 变量名称.setEditable(true); //设置文本字段为空 变量名称.setText(""); //设置提示光标位置 变量名称.requestFocusInWindow(); //修改按钮为可用 变量名称.setEnabled(true); //修改按钮为不可用 变量名称.setEnabled(false); “修改”按钮:点击“修改”按钮后应该使文本字段(除姓名外,姓名不可改,只能删除此人)为可编辑状态, 并且“增加”、“修改”、“删除”为不可用状态,“保存”按钮为可用状态 “删除”按钮:点击“删除”按钮后应该使文本字段为不可编辑状态, 并且“增加”、“修改”、“删除”、“保存”按钮为可用状态 “保存”按钮:点击“保存”按钮后应该使文本字段为不可编辑状态, 并且“增加”、“修改”、“删除”为可用状态,“保存”按钮为不可用状态 6、为列表添加部分代码 为了在列表中显示增加的内容,需在NotebookView中使用集合 import java.util.*;//也可使用Alt+Enter选择导入包 Hashtable ht = new Hashtable(); Vector v = new Vector(); 在"设计"中,右击列表,事件,ListSelection,ValueChanged 窗体中的文本字段为不可编辑状态,文本字段应显示相应的内容, 列表中显示当前的记录,并且“增加”、“修改”、“删除”为可用状态, “保存”按钮为不可用状态 String s = (String) jListText.getSelectedValue(); if(s!=null) { if (v.size() == 0) { jListText.setSelectedIndex(0); } //设置文本字段显示的内容 Person p = (Person) ht.get(s); 变量名称.setText(p.get方法); } 7、给“保存”按钮添加代码,将内容写入列表, 需导入包import javax.swing.*; 代码是: String name = jTextName.getText().trim(); if (name.equals("")) { JOptionPane.showMessageDialog(MainPanel, "姓名不能为空~"); jTextName.requestFocusInWindow(); return; } if(v.contains(name)){ JOptionPane.showMessageDialog(MainPanel, "姓名已经存在~"); jTextName.requestFocusInWindow(); return; } //添加数据到集合 v.add(name); Person p = new Person(name, jTextEmail.getText(), jTextTel.getText(),jTextAddress.getText()); ht.put(name, p); //数据显示到列表中 jListText.setListData(v); 8、给“保存”按钮添加代码,将修改后的内容写入列表, 为区分是增加保存还是修改保存, 设变量mode ,修改2 int mode=1;//增加1 在“增加”按钮的代码最后加上mode=1; 在“修改”按钮的代码最后加上mode=2; 修改部分“保存”按钮代码,其余不变。 if(mode==1) { if (name.equals("")) { JOptionPane.showMessageDialog(MainPanel, "姓名不能为空~"); jTextName.requestFocusInWindow(); return; } if(v.contains(name)){ JOptionPane.showMessageDialog(MainPanel, "姓名已经存在~"); jTextName.requestFocusInWindow(); return; } v.add(name); } //修改mode mode=1; 9、为“删除”按钮添加代码,双击按钮即可 int i = JOptionPane.showConfirmDialog(MainPanel, "请确认要删除吗,"); if (i == 0) { String name = (String) jListText.getSelectedValue(); if (name != null) { v.remove(name); ht.remove(name); jListText.setListData(v); if (v.size() != 0) { jListText.setSelectedIndex(0); } else { jTextName.setText(""); jTextEmail.setText(""); jTextTel.setText(""); jTextAddress.setText(""); } } } //修改mode mode=1; 10、序列化和反序列化,即实现输入内容的保存和打开 import java.io.*; 在NotebookView.java中添加方法 public void ObjectRead() { //反序列化,即从磁盘中读出保存的数据 FileInputStream fi = null; ObjectInputStream so = null; try { fi = new FileInputStream("newFile"); so = new ObjectInputStream(fi); ht = (Hashtable) so.readObject(); v = (Vector) so.readObject(); } catch (FileNotFoundException e1) { JOptionPane.showMessageDialog(this,"通讯录文件找不到!\n你可能是第一次使用本程序,或丢失了数据文件!","错误",JOptionPane.PLAIN_MESSAGE); } catch (ClassNotFoundException e2) { System.out.println(toString()); } catch (IOException e3) { System.out.println(toString()); } } public void ojbectSerialize() { //序列化,即将数据写入磁盘文件中 ObjectOutputStream so = null; FileOutputStream fo = null; try { fo = new FileOutputStream("newFile"); so = new ObjectOutputStream(fo); so.writeObject(ht); so.writeObject(v); } catch (FileNotFoundException e1) { System.out.println(toString()); } catch (IOException e2) { System.out.println(toString()); } finally { try { so.close(); fo.close(); } catch (IOException ex) { System.out.println(toString()); } } } 修改"退出"按钮的代码为: this.ojbectSerialize();//在退出前保存数据到文件 System.exit(-1); 修改NotebookView.java的构造方法 public NotebookView() { //对象反序列化 this.ObjectRead(); //初始化组件 initComponents(); //将数据连入List列表中 jListText.setListData(v); //设置选中第1条记录 jListText.setSelectedIndex(0); } 11、添加菜单栏和菜单项 拖动“菜单栏”到合适位置,修改名称为“文件”,"帮助", 变量名称为"JMenuFIle","JMenuHelp" 拖动“菜单项”到“文件”下面,修改名称为“退出”, 变量名称为“jMenuExit”,快捷键为“Alt+Q” 右击“退出”菜单项,选择“事件”,action,actionperformed, 添加代码: System.exit(-1); 拖动“菜单项”到“帮助”下面,修改名称为“关于”, 变量名称为“jMenuAbout”,快捷键为“Alt+A” 12、添加关于窗体 新建JFrame窗体,NotebookAbout.java 设计界面 4个标签,1个按钮 标签1:属性,icon,splane.png(一幅图片) 标签2:我的应用程序1.0 标签3:版权所有(C)2008,本人保留所有权利 标签4:联系我:lulovemengfei@sina.com 按钮:名称“知道了”,变量名称“JButtonOK” 双击“知道了”按钮,添加代码 this.dispose(); 13、为“关于”菜单项添加代码 右击“关于”菜单项,选择“事件”,action,actionperformed, 添加代码: NotebookAbout ab=new NotebookAbout(); ab.setVisible(true); 14、添加登录界面 右击源包/notebook,选择新建,JFrame窗体,Password.java 设计界面 3个标签,1个文本字段,1个密码字段 标签1:名称“用户登录” 标签2:名称“用户名” 标签3:名称“密码” 文本字段:名称为空,变量名称“jTextName” 密码字段:名称为空,变量名称“jPassword” 右击密码字段,选择“事件”,action,actionperformed, 添加代码: if(jTextName.getText().equals("sll")&&jPassword.getText().equals("123")) { new NotebookView().setVisible(true); this.dispose(); } else { JOptionPane.showMessageDialog(this,"密码错误!","警告",JOptionPane.PLAIN_MESSAGE); jTextName.setText(""); jPassword.setText(""); jTextName.requestFocusInWindow(); } 15、点击“生成”菜单,选择设置主项目配置,定制, 主类:Password.java 16、运行主项目 17、生成可执行文件,即jar文件 生成/生成主项目 在dist文件夹中就看到了,可以将它和数据文件一起拷贝到任何目录下去使用了。
本文档为【c语言制作通讯录】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_633808
暂无简介~
格式:doc
大小:26KB
软件:Word
页数:0
分类:生活休闲
上传时间:2017-12-07
浏览量:84