java聊天室程序设计报告

java聊天室程序设计报告

ID:18698681

大小:155.98 KB

页数:12页

时间:2018-09-21

java聊天室程序设计报告_第1页
java聊天室程序设计报告_第2页
java聊天室程序设计报告_第3页
java聊天室程序设计报告_第4页
java聊天室程序设计报告_第5页
资源描述:

《java聊天室程序设计报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、《Java之聊天室制作》总结报告姓名__赵其国___________________学号__201135052106_____________班级__嵌入式一班_______________二〇一二年十二月二十日一,设计目的为了更好的巩固输入输出流,窗体设计,多线程运用,网络通信设计方面的知识。把所学的课程及相关知识加以融会贯通。二,设计内容设计的聊天室能实现用户登录,显示登录用户列表,以及发送聊天信息和显示聊天信息的功能。并可以选择接收信息的用户进行单发或群发的功能,运行程序,登录服务器后,可以从列表中

2、选择单个或多个用户进行聊天,它是图形界面,线程,流与文件系统等技术的综合应用。三,概要设计实现的功能:1,启动服务器端,接收客户端发来的信息,并在服务器端窗体显示客户端聊天信息,再吧信息返给在线用户,窗体背景色为粉色2,启动客户端窗体,窗体背景色为粉色3,用户名编辑框输入用户名,设置字体显红色,单击登录按钮,在显示在线用户列表内显示用户名,同时用户名编辑框不能编辑4,发送编辑框输入发送内容,单击发送按钮,启动输出流,把信息发送出去,同时把发出的信息追加到聊天内容文本域内,显示用户名,时间和发送内容。5,单

3、击退出按钮,运用File类和JfileChooser类实现聊天信息的保存6,聊天信息文本域,在线用户显示域和发送信息的文本域加了滚动条,其中聊天信息文本域,发送信息的文本域的文字能自动换行。7,别的客户端发来信息是通过输入流读取信息,并截取发来信息的用户名及信息,用户名加到在线用户列表上显示在线,信息追加到聊天内容文本域内,显示用户名,时间和发送内容。功能不足之处:1,保存聊天信息保存为text格式的有黑块。保存为Doc格式的要转码不能直接打开2,用户在线显示,只能在用户发送信息时别的用户才能得到在线的用

4、户名,然后再加到在线用户列表中,显示用户在线。3,聊天室只适合群聊,没有实现技能群聊又能和单个人聊天的功能4,用户输出“退出”后在线用户列表中就会把用户删除,不过没有实现没找到错误出在哪里。一,演示截图客户端1用户界面(可在同一个类中打开多个窗体):客户端2用户界面:服务器端用户界面:用doc格式保存的聊天信息(打开时转码为简体中文格式):一,设计源代码(导入的代码省略):客户端1代码(客户端2,3..代码同下)@SuppressWarnings("all")publicclassClient1exten

5、dsJFrame{privateJLabelusername,input;privateJButtondenglu,exit,send;privateJTextAreaname,msg,say;privateJTextFieldjt1;privateJSplitPanesplit;booleanloginFlag=false;privateSocketsocket;privateOutputStreamop;privateJListuser_list;//列表privateDefaultComboBoxM

6、odelmodel;//组件模型publicClient1(){super();setTitle("聊天室");username=newJLabel("用户名:");input=newJLabel("输入聊天内容:");denglu=newJButton("登陆");exit=newJButton("退出");send=newJButton("发送");msg=newJTextArea(10,25);msg.setEnabled(false);//文本条不可编辑Fontfnt1=newFont("Seri

7、ef",Font.PLAIN,20);//根据名称、样式和磅值大小设置字体msg.setFont(fnt1);msg.setLineWrap(true);//自动换行jt1=newJTextField(15);jt1.setForeground(Color.red);say=newJTextArea(2,15);say.setLineWrap(true);name=newJTextArea(10,5);name.setEnabled(false);user_list=newJList();user_lis

8、t.setModel(newDefaultComboBoxModel(newString[]{""}));model=(DefaultComboBoxModel)user_list.getModel();//获得列表框的模型}publicvoidclientThread(){try{socket=newSocket("localhost",8866);//创建接口op=socket.getOutputStream();//创建

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。