【文件属性】:
文件名称:基于JAVA的网络聊天室(BS)
文件大小:48KB
文件格式:RAR
更新时间:2013-09-11 06:06:14
java 网络 聊天室(BS)
部分代码如下:client:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package client;
/**
*
* @author Administrator
*/
import java.awt.*;
import java.io.*;
import java.net.*;
import java.applet.*;
import java.util.Hashtable;
public class ClientChat extends Applet implements Runnable
{
Socket socket=null;
DataInputStream in=null;
DataOutputStream out=null;
InputNameTextField 用户提交昵称界面=null;
ChatArea 用户聊天界面=null;
Hashtable listTable;
Label 提示条;
Panel north, center;
Thread thread;
public void init()
{
int width=getSize().width;
int height=getSize().height;
listTable=new Hashtable();
setLayout(new BorderLayout());
用户提交昵称界面=new InputNameTextField(listTable);
int h=用户提交昵称界面.getSize().height;
用户聊天界面=new ChatArea("",listTable,width,height-(h+5));
用户聊天界面.setVisible(false);
提示条=new Label("正在连接到服务器,请稍等...",Label.CENTER);
提示条.setForeground(Color.red);
north=new Panel(new FlowLayout(FlowLayout.LEFT));
center=new Panel();
north.add(用户提交昵称界面);
north.add(提示条);
center.add(用户聊天界面);
add(north,BorderLayout.NORTH);
add(center,BorderLayout.CENTER);
validate();
}
public void start()
{
if(socket!=null&&in!=null&&out!=null)
{ try
{
socket.close();
in.close();
out.close();
用户聊天界面.setVisible(false);
}
catch(Exception ee)
{
}
}
try
{
socket = new Socket(this.getCodeBase().getHost(), 6666);
in=new DataInputStream(socket.getInputStream());
out=new DataOutputStream(socket.getOutputStream());
}
catch (IOException ee)
{
提示条.setText("连接失败");
}
if(socket!=null)
{
InetAddress address=socket.getInetAddress();
提示条.setText("连接:"+address+"成功");
用户提交昵称界面.setSocketConnection(socket,in,out);
north.validate();
}
if(thread==null)
{
thread=new Thread(this);
thread.start();
}
}
public void stop()
{
try
{
socket.close();
thread=null;
}
catch(IOException e)
{
this.showStatus(e.toString());
}
}
public void run()
{
while(thread!=null)
{
if(用户提交昵称界面.get能否聊天()==true)
{
用户聊天界面.setVisible(true);
用户聊天界面.setName(用户提交昵称界面.getName());
用户聊天界面.setSocketConnection(socket,in,out);
提示条.setText("祝聊天愉快!");
center.validate();
break;
}
try
{
Thread.sleep(100);
}
catch(Exception e)
{
}
}
}
}
【文件预览】:
网络聊天室(BS)
----Client()
--------test()
--------applet.policy(54B)
--------dist()
--------manifest.mf(85B)
--------src()
--------build()
--------build.xml(3KB)
--------nbproject()
----Server()
--------test()
--------dist()
--------manifest.mf(85B)
--------src()
--------build()
--------build.xml(3KB)
--------nbproject()
网友评论
- cs的,不是bs的
- 还可以,可以使用
- 资源很好,很实用
- 做实验报告尚可
- 还可以,可以用来做实验报告
- CS结构,用作课程项目参考还是可以的
- CS结构的,与标题不太符合呀,不过,可以做参考
- 某些地方还存在不完善 但是可以作为新手入门的一个很好的参考
- 并不是BS结构。但是还有有所可取之处。能够明白网络聊天的思路模式。
- 是CS的不是BS的,是BS的就好了
- 是CS结构的,不是BS
- 不管怎样,谢楼主,学习了
- 还可以,拿来展示一下聊天室开发的基本思路
- CS结构的,与标题不太符合呀,不过,可以做参考
- 不是BS结构诶,明明是CS结构。。。