java课程设计报告--利用JAVA设计简单聊天对话框.doc

上传人:scccc 文档编号:13122439 上传时间:2021-12-15 格式:DOC 页数:11 大小:119.50KB
返回 下载 相关 举报
java课程设计报告--利用JAVA设计简单聊天对话框.doc_第1页
第1页 / 共11页
java课程设计报告--利用JAVA设计简单聊天对话框.doc_第2页
第2页 / 共11页
java课程设计报告--利用JAVA设计简单聊天对话框.doc_第3页
第3页 / 共11页
java课程设计报告--利用JAVA设计简单聊天对话框.doc_第4页
第4页 / 共11页
java课程设计报告--利用JAVA设计简单聊天对话框.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《java课程设计报告--利用JAVA设计简单聊天对话框.doc》由会员分享,可在线阅读,更多相关《java课程设计报告--利用JAVA设计简单聊天对话框.doc(11页珍藏版)》请在三一文库上搜索。

1、面向对象程序设计课程设计报告题目:利用JAVA设计简单聊天对话框 专业:计算机科学与技术班级:10级(2)班姓名:*指导教师:姚老师成绩:计算机与信息工程系二0一三 年六月十二 日目录的.32.设计框架.3 .4 4. 程序清单.65. 程序运行效果.96.设计心得.107.参考文献.11在当今的信息时代,越来越多的聊天工具被应用 ,Java语言是当今流行的网络编程语言,它具有面向对象、与平台无关、安全、多线程 等特点。使用Java语言不仅可以实现大型企业级的分布式应用系统,还能够为小型的、嵌入 式设备进行应用程序的开发。面向对象的开发方法是当今世界最流行的开发方法,它不仅具有更贴近自然的语义

2、,而且有利于软件的维护和继承。 此次课程设计的题目为简单的聊天对话框,通过巩固所学Java语言基本知识,增进Java语言编辑基本功,掌握JDK、JCreator等开发工具的运用,拓宽常用类库的应用。使我们通过该教学环节与手段,把所学课程及相关知识加以融会贯通,全面掌握Java语言的编程思想及面向对象程序设计的方法,为今后从事实际工作打下坚实的基础。2. 设计框架的形成 设计一个简单的聊天对话框,单击“清除”按钮,则消息输入文本框中的信息清除掉;单击“发送”按钮,则把消息发送到信息显示框中。3.实例分析;(1)通过匿名类实现 可以通过匿名类实现“清除”按钮的事件监听,在actionPerform

3、ed方法中,当单击按钮时进行相应的处理。本例中直接调用消息输入框(jtaInput)的setText方法,设置输入框的文本为空,以达到清除输入框中已输入文本的目的,代码如下所示。 jbClear.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)jtaInput.setText(""););(2)通过Action实现在“发送”按钮的事件处理中,通过设置其行为(Action)来实现。首先,需要定义一个Action,实现其actionPerformed方法。本例中,发生

4、事件时能通过调用自定义的sendMessage方法来发送消息。 对于“发送”按钮,可调用setAction方法设置有按钮事件发生时的行为,代码如下所示。 Action sendMessage=new AbstractAction()public void actionPerformed(ActionEvent e)sendMessage(); jbSend.setAction(sendMessage);(3.)处理键盘事件 设置文本输入框在用户按下“Enter”键时发出消息,代码如下所示。 jtaInput.getInputMap().put(KeyStroke.getKeyStroke(&q

5、uot;ENTER"),"send");jtaInput.getActionMap().put("send",sendMessage);(a)调用getInputMap方法得到输入框的InputMap,再用该InputMap的put方法实现键盘的绑定,具体可参见InputMap类的使用说明。本例中,绑定的键为“Enter“键。 (b) 调用getActionMap方法得到输入框的ActionMap,再用ActionMap的put方法设置输入框的行为,这里为调用sendMessage的Action。(4.)组件的相互控制 在sendMessage

6、方法中,调用聊天信息显示框的insert方法插入最新收到的信息。本例中,从名字输入框和消息输入框中得到该信息。实际程序中应结合网络编程,从不同的主机得到。最后用setText方法传入空的字符串来清空用户输入的消息。代码如下所示。 private void replaceMessage()String message=jtfName.getText()+"> "+jtaInput.getText()+"n"jtaChat.insert(message,jtaChat.getDocument().getLength(); 4.程序清单:import j

7、ava.awt.*;import java.awt.event.*;import javax.swing.*;public class ActionDemo extends JFrame JTextField jtfName;JTextArea jtaChat;JTextArea jtaInput;JButton jbSend;JButton jbClear;public ActionDemo()super ("控件的相互控制");Container container=this.getContentPane();JPanel p=new JPanel();jtfName=

8、new JTextField(10);p.add(new JLabel("主题:Write once,Run Anywhere.");p.add(new JLabel("昵称");p.add(jtfName);container.add(p,BorderLayout.NORTH);jtaChat=new JTextArea();container.add(new JScrollPane(jtaChat),BorderLayout.CENTER);Box box=new Box(BoxLayout.X_AXIS);jtaInput=new JTextAre

9、a(3,20);jbSend=new JButton();jbClear=new JButton();jbClear.setText("清除");box.add(new JScrollPane(jtaInput);box.add(jbClear);box.add(jbSend);container.add(box,BorderLayout.SOUTH);jbClear.addActionListener(new ActionListener()public void actionPerformed(ActionEvent e)jtaInput.setText("&

10、quot;););Action sendMessage=new AbstractAction()public void actionPerformed(ActionEvent e)replaceMessage();jtaInput.getInputMap().put(KeyStroke.getKeyStroke("ENTER"),"send");jtaInput.getActionMap().put("send",sendMessage);jbSend.setAction(sendMessage);jbSend.setText(&qu

11、ot;发送");this.setSize(400,200);this.setVisible(true);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);private void replaceMessage()String message=jtfName.getText()+"> "+jtaInput.getText()+"n"jtaChat.insert(message,jtaChat.getDocument().getLength();jtaInput.setText("

12、;");public static void main(String args)new ActionDemo(); 5.程序运行效果如图所示单击“发送”按钮,则把消息发送到信息显示框中。单击“清除”按钮,则消息输入文本框中的信息清除掉;6.设计心得我花费了近一个多星期的时间,查阅了许多相关的资料,终于把这个Java聊天对话框程序基本实现了。在设计的过程中了解到自己的知识还是比较有限,回顾起此次java设计,至今我仍感慨颇多,的确,从选题到定稿,从理论到实践,在整整一星期日子里,可以说的上是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本

13、上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正掌握这门技术,也提高了自己的独立思考的能力。在设计的过程中遇到问题,可以说得上是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过这次课程设计之后,一定把以前所学过的知识重新温故。通过此次课程设计,将我本学期所学的JAVA知识得到巩固和应用,在设计的过程中我遇到了很到问题,不过在老师和同学们的帮助和自己的思考下还是很好的完成了。这此课程设计还让我懂得了写程序不能闭门造车,要努力拓宽知识面,开阔视野,拓展思维。它还让我学会了在网上查阅那些无限的资料。让我不仅学会了书本上的知识,还让自己能够面对困难并且克服它。7.参考文献1张思民,梁维娜Java程序设计实践教程M北京:清华大学出版社2006.8:1-21.3 范立南, 韩晓微, 王忠石等 基于多结构元的噪声污染灰度图像边缘检测研究J 武汉大学学报(工学版) ;2003.45-494陈国君、陈磊、陈锡祯、刘洋.Java2程序设计基础M,第一版.北京:清华大学出版社,2006:324-337

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

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1