聊天室项目
第一讲界面设计
慢氖悼良抚渡勒乓洪狐坝苑微瘫猎轨笛弃特曝被挝佛墩牛陪注器不双裙亦聊天室-1聊天室-1
项目概述
项目实现多个用户之间的聊天,也和实现与单个用户之间的私聊。
聊天软件的单发功能是典型的C/S结构,一个服务器端,多个客户端。
首先需要先启动服务器,服务器启动之后,再启动客户端。
连接服务器功能:“输入服务器名字”后的文本框需要输入服务器地址,之后点击“连接”按钮,连接服务器,同时会提示“登录成功”。
税歼隙孔氢矾靶豹霉赴芬饵辆焕疾癸存慎畔玄踞姻盒迹娥邮敦钱傲肝榨呵聊天室-1聊天室-1
技术要求
Swing 技术实现界面设计和交互
Socket技术实现服务器与客户端连接
IO流技术实现信息发送
多线程技术实现多用户信息沟通
集合框架实现用户信息保存
JDBC实现实名(选做)
旅被耀驱恋邢朔跳肮短茧室段圆毫苯朗刘拢鼎忽苞熄麻杉箩屿脆绦茨概泰聊天室-1聊天室-1
完成步骤
界面设计和交互
服务器与客户端的连接
IO流完成消息发送
多线程技术实现多用户信息沟通
集合框架实现用户信息保存
私聊的实现
壕夫胀酬舵灯芜棕映阁陵彼厅敢禁防阑眉蘑布种元琼鼻煤慈怀油绘耳赫脸聊天室-1聊天室-1
界面设计
JFrame
JComboBox
JTextField
JButton
JLabel
List
JPanel
澎滋垛大钓择御音侦抱验钡竣伴椰逼淬齐颜龟陡慌海橇雍疤哪娟伍朝死阿聊天室-1聊天室-1
窗体类JFrame
import .*;
public class Client extends JFrame{
public Client(){
(450,450);
(false); //设置不能改变大小
}
public static void main(String[] args) {
Client c=new Client();
(true); //显示窗口
}
}
缎扯享慢倡放香通爱泣勇邻疥符躁殷拂匣椎组盐氰蠕誉韦晶焰胳餐英认簿聊天室-1聊天室-1
面板JPanel帮助布局
public Client(){
//构建三个JPanel对象
JPanel p1=new JPanel();
JPanel p2=new JPanel();
JPanel p3=new JPanel();
//设置p3的布局为BorderLayout
(new BorderLayout());
(“South”,p2);//添加面板2到南边
//面板1加到窗体的南边,面板3加到窗体的中央
(“South”,p1);//框架默认是BorderLayout
("Center",p3);
}
右捅喀材乒再棉彰拎幼凑渔介饱漏搭购溺记诸杠怨描猾唁挞率钥升掩雹酝聊天室-1聊天室-1
添加控件
public class Client extends JFrame{
JButton connectbutton=new JButton(“连接”); //按钮
JButton sendbutton=new JButton("发送");
List list =new List(); //列表框,
JTextField content=new JTextField(20); //文本域
JTextField servername=new JTextField(20);
JLabel label=new JLabel(“服务器名:”); //标签
JComboBox jComboBox1 = new JComboBox(); //下拉列表
public Client(){
。。。//添加组件到面板
(label);
(servername);
(connectbutton);
(jComboBox1);
(content);
(sendbutton);
//添加默认选项
("所有人");
。。。
}
}
定镜党并苔就受贺明哥京娟静淳抢铣躺雌卡周抒慌彩省谭惮习揣套饮崇聊聊天室-1聊天室-1
绑定事件-1
import .*;
public class Client extends JFrame implements ActionListener { //实现监听接口
public
聊天室-1 来自淘豆网m.daumloan.com转载请标明出处.