沈阳化工大学 学 生 实 验 报 告 专业班级 学号 课程名称 实验室 软件设计与体系结构 8#514 软件工程实验室 姓名 项目名称 实验时间 评 分 指导教师 刘俊 即时通信音频模块 2010/11/17 同组人 无 实验要求: 1, 了解Java程序设计语言,了解NetBean开发环境 2, 练习Java程序开发的基本步骤 3, 了解Java程序的通信原理 4, 完成即时通信软件中音频功能,也就是我做的音乐播放功能,实现软件的多媒体通信功能 实验过程 1, 有了前面的基础,我对Java程序设计有了较明白的框架思想 2, 这里的音乐播放功能我做的比较简单,只有添加文件,播放和暂停三个功能,但是 s1 = new Socket("127.0.0.1", 5555); dos.writeUTF("**"+username); new ReceiveThread(dis); 3, 我在输入框里加入了一个监听事件,如果输入回车键,则发送该消息 input.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent e){ dos.writeUTF(username+":" + input.getText()); input.setText(null); } }; 4, 同样,也可以通过发送按钮来触发发送事件 dos = new DataOutputStream(s1.getOutputStream()); dos.writeUTF(username +":"+ input.getText()) input.setText(null); 5, 这次的程序重要的地方是接受线程类的编写,这直接影响你界面上的效果,对消息的处理是,判断读出的消息是用户名的话,就刷新好友列表上的内容,如果是消息的话就直接加在消息记录上 while(true){ String str = new String(dis.readUTF()); if(str.substring(0,2).equals("**")){ Chatname.setText(str+"\n");} else{ MyText.append(str + "\n"); } } } 7,这样,客户端程序的基本功能完成了,如消息的接收和发送,如好友列表的刷新以及消息记录的处理,但即时通信的功能远不止这些,我还在努力探索中 实验结果说明 这次的实验结果是我完成了即时通信的客户端程序,界面图如下: 如图,用户名的前面加上了标记文字,是为了处理上的方便和美观 基本模拟QQ的界面,但是功能上却相差很多,而且图中的音频播放,我还没有完成 通过这次实验,我学到了许多,也付出了许多努力去调试,去学习,我的即时通信程序也完成了我最最核心的地方 教师签字: 年 月 日 本文来源:https://www.wddqw.com/doc/925ca485d4d8d15abe234e66.html