flash 聊天室

本文介绍如何使用Flash CS3和Java创建一个简单的C/S架构聊天室。客户端通过Socket连接Java服务器,实现文本消息的发送和接收。用户界面包含TextInput、Button和TextArea组件,客户端代码在ActionScript中编写,服务器端使用Java ServerSocket处理多个客户端连接。
摘要由CSDN通过智能技术生成

今天我们来制作 Flash 聊天室,学习使用 Socket 类,用 Java 作后台,开发一个 C / S 架构的多人聊天程序。首先,设计用户界面。
一、界面设计

界面的元件全部使用 Flash CS3 自带的组件:
    首先,放入 TextInput 组件(实例名 input_txt),作为用户输入;
    再放入 Button 组件(实例名 submit_btn),用于提交输入的信息;
    最后放入 TextArea 组件(实例名 output_txt),显示聊天信息。

二、组件参数初始化
    由于客户端代码不是很多,我们这次就写在动作帧上:
// ************ 组件参数初始化 ************
submit_btn.label = "发送消息";
output_txt.editable = false;

// 设置各组件中字体的大小
input_txt.setStyle("textFormat", new TextFormat(null, 15));
output_txt.setStyle("textFormat", new TextFormat(null, 15));
submit_btn.setStyle("textFormat", new TextFormat(null, 15, null, true));

// 当按下回车或点击 submit_btn 按钮后调用事件处理函数
submit_btn.addEventListener(MouseEvent.CLICK, sendMessage);
addEventListener(KeyboardEvent.KEY_DOWN, onKeyDown);

// 事件处理函数
function onKeyDown(evt:KeyboardEvent):void {
    if (evt.keyCode == Keyboard.ENTER) {
        sendMessage(null);
    }
}

function sendMessage(evt:Event):void {
    // 测试:将 input_txt 的内容输出到 output_txt 中
    output_txt.appendText(input_txt.text + "/n");
   
    // 清空 input_txt,并设置焦点到 input_txt
    input_txt.text = "";
    stage.focus = input_txt;
}

三、编写客户端 Socket
1. 首先,Socket 连接非常简单:
    var socket:Socket = new Socket();
    socket.connect("127.0.0.1", 8888);
其中 connect() 方法中的两个参数分别为是主机名和端口号(端口号尽量用 1024 以上)。好了,这样就连接上了。接下来是读写的问题。

2. 向服务器端写入字符串:我们在 sendMessage() 方法中进行写入操作,注意写出的字串必需以回车(/n)结束:
function sendMessage(evt:Event):void {
   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值