资源简介
用Java编写的QQ聊天程序,仅供大家参考、学习与交流。

代码片段和文件信息
package thisMyServer;
import java.awt.BorderLayout;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.io.PrintStream;
import java.io.PrintWriter;
import java.net.Socket;
import java.net.UnknownHostException;
import javax.swing.DefaultListModel;
import javax.swing.JButton;
import javax.swing.Jframe;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.WindowConstants;
public class MyClient {
Jframe frand = new Jframe(“QQ客户端“);//窗口
JButton jb2 = new JButton(“群聊“);//按钮
JLabel fri = new JLabel(“我的好友 (0)“);//标签
JPanel frijp = new JPanel();//容器
DefaultListModel dlm = new DefaultListModel();//?
JList jl = new JList(dlm);//文本列表
Socket so;//套接字
InputStream is;//输入流
BufferedReader br;//(为InputStream等流起缓冲的流)
OutputStream os;//输出流
PrintStream ps;//(为OutputStream等流起缓冲的流)
String prefix = “@对所有人&“;//用来区分是群聊还是悄悄话。
SendMessage sm = new SendMessage();//初始化一个线程的类
String userName = ““;//用来存储标题的字符串。
public MyClient() {
//输入一个名称
userName = javax.swing.JOptionPane.showInputDialog(“请输入您的姓名:“);
frijp.setLayout(new BorderLayout());//布局
frijp.add(fri “North“);//添加标签
frijp.add(jl);//添加列表
frand.add(frijp);//添加容器
frand.add(jb2 “South“);//添加按钮
frand.setBounds(800 300 250 500);//设置窗体大小及其位置。
frand.setVisible(true);//设置窗体为可见
frand.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);//默认关闭为结束程序
/**
* 自动连接服务器。
*/
boolean ifsucc = connect(“127.0.0.1“ 3333);//调用方法连接服务器。
// 初始化对话框。
sm.s = so;
sm.prefix = prefix;
sm.start();//启动线程
if (ifsucc) {
// sm.jta.setText(“接入成功\n“);
/**
* 不断接收服务器上的好友。
*/
MessListen ml = new MessListen();
ml.br = br;
// ml.jta = jta;
ml.start();
} else {
// sm.jta.setText(“连接失败!\n“);
}
/**
* 列表的监听
* 双击好友菜单时弹出私聊对话框。(弹出单人聊天对话框)
*/
jl.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
if (e.getClickCount() == 2) {
jl.locationToIndex(e.getPoint());
sm.prefix = jl.getSelectedValue() + “##单人&&“;
sm.frame.setVisible(true);
}
}
});
/**
* 单击群聊时弹出对话框。(弹出与所有人聊天的对话框)
*/
jb2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
sm.prefix = “@对所有人&“;
sm.frame.setVisible(true);
}
});
}
/**
* 连接到服务器的方法。
*
* @param goip
* 得到服务器IP
* @param goport
* 得到服务器端口号
* @return True:已连接到服务器。False:连接服务器失败。
*/
public boolean co
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1634 2009-09-11 20:10 QQ聊天室\说明.txt
文件 1165824 2009-09-11 20:09 QQ聊天室\PPT参考\项目过程讲解.ppt
文件 16570 2009-08-20 04:33 QQ聊天室\项目\聊天服务器r.jar
文件 16577 2009-08-20 04:33 QQ聊天室\项目\聊天客户端r.jar
文件 6911 2009-08-20 03:44 QQ聊天室\源代码\MyClient.java
文件 7145 2009-08-20 04:32 QQ聊天室\源代码\MyServer.java
目录 0 2009-09-11 20:10 QQ聊天室\PPT参考
目录 0 2009-09-11 20:10 QQ聊天室\项目
目录 0 2009-09-11 20:10 QQ聊天室\源代码
目录 0 2009-09-11 20:10 QQ聊天室
----------- --------- ---------- ----- ----
1214661 10
相关资源
- 微博系统(Java源码,servlet+jsp),适
- java串口通信全套完整代码-导入eclip
- jsonarray所必需的6个jar包.rar
- 三角网构TIN生成算法,Java语言实现
- java代码编写将excel数据导入到mysql数据
- Java写的cmm词法分析器源代码及javacc学
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
- Java 文件加密传输
- java做的房产管理系统
- 基于jsp的bbs论坛 非常详细
评论
共有 条评论