1、1 第 1 页 面向对象程序设计面向对象程序设计 课程设计报告课程设计报告 题目:题目: 利用利用 JAVAJAVA 设计简单聊天对话框设计简单聊天对话框 专业:专业: 计算机科学与技术计算机科学与技术 班级:班级: 1010 级(级(2 2)班)班 姓名:姓名: * 指导教师:指导教师: x x 老师老师 成绩:成绩: 计算机与信息工程系计算机与信息工程系 二二 0 0 一三一三 年六月十二年六月十二 日日 2 第 2 页 目录目录 1.1.课程设计目的课程设计目的.3.3 2.2
2、.设计框架设计框架33 3.3.案例分析案例分析.4.4 4.4.程序清单程序清单.6.6 5.5.程序运行效果程序运行效果99 6.6.设计心得设计心得.10.10 7.7.参考文献参考文献.11.11 3 第 3 页 1.1.课程设计目的课程设计目的 在当今的信息时代,越来越多的聊天工具被应用 ,Java 语言是当今流行的网 络编程语言,它具有面向对象、与平台无关、安全、多线程 等特点。使用 Java 语 言不仅可以实现大型企业级的分布式应用系统, 还能够为小型的、 嵌入 式设备进行 应用程序的开发。面向对
3、象的开发方法是当今世界最流行的开发方法,它不仅具有 更贴近自然的语义,而且有利于软件的维护和继承。 此次课程设计的题目为简单的聊天对话框, 通过巩固所学Java语言基本知识, 增 进Java语言编辑基本功,掌握JDK、JCreator等开发工具的运用,拓宽常用类库的应 用。使我们通过该教学环节与手段,把所学课程及相关知识加以融会贯通,全面掌 握Java语言的编程思想及面向对象程序设计的方法,为今后从事实际工作打下坚实 的基础。 2.2.设计框架的形成设计框架的形成 设计一个简单的聊天对话框,单击“清除”按钮,则消息输入文本框中的信息清除 掉;单击“发送”按钮,则把消息发
4、送到信息显示框中。 4 第 4 页 3.3.实例分析;实例分析; (1 )通过匿名类实现 可以通过匿名类实现“清除”按钮的事件监听,在 actionPerformed 方法中,当 单击按钮时进行相应的处理。本例中直接调用消息输入框(jtaInput)的 setText 方法,设置输入框的文本为空,以达到清除输入框中已输入文本的目的,代码如下 所示。 jbClear.addActionListener(newnew ActionListener() publicpublic voidvoid actionPerformed(ActionEvent e) jtaInput.setTex
5、t(“); ); (2 )通过 Action 实现 在“发送”按钮的事件处理中,通过设置其行为(Action)来实现。首先,需 要定义一个 Action,实现其 actionPerformed 方法。本例中,发生事件时能通过调用自定义的 sendMessage 方法来发送消息。 对于“发送”按钮,可调用 setAction 方法设置有按钮事件发生时的行为,代码 如下所示。 Action sendMessage=newnew AbstractAction() publicpublic voidvoid actionPerformed(ActionEvent e) 5 第 5 页 sendMess
6、age(); ; jbSend.setAction(sendMessage); (3.)处理键盘事件 设置文本输入框在用户按下“Enter”键时发出消息,代码如下所示。 jtaInput.getInputMap().put(KeyStroke.getKeyStroke (“ENTER“),“send“); jtaInput.getActionMap().put(“send“,sendMessage); (a)调用getInputMap方法得到输入框的InputMap,再用该InputMap 的put方法实 现键盘的绑定,具体可参见 InputMap 类的使用说明。本例中,绑定的键为“Enter “键。 (b) 调用 getActionMap 方法得到输入框的 ActionMap,再用 ActionMap 的 put 方 法设置输入框的行为,这里为调用 sendMessage 的 Action。 (4.)组件的相互控制 在 sendMessage 方法中,调用聊天信息显示框的 insert 方法插入最新收到的信 息。本例中,从名字输入框和消息输入框中得到该信息。实际程序中应结合网络编 程,从不同的主机得到。最后用 setText 方法传入空的字符串来清空用户输入的消 6 第 6 页 息。代码如下所示。 privateprivat