<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="initApp()">
<mx:Script>
<![CDATA[
import flash.events.SecurityErrorEvent;
import flash.events.IOErrorEvent;
import flash.events.ProgressEvent;
import flash.net.Socket;
import flash.utils.ByteArray;
private var socket:Socket = new Socket();
internal function initApp():void
{
//socket.addEventListener(Event.CLOSE,closeHandler);
socket.addEventListener(Event.CONNECT,connectHandler);
socket.addEventListener(IOErrorEvent.IO_ERROR,ioErrorHandler);
socket.addEventListener(SecurityErrorEvent.SECURITY_ERROR,securityErrorHandler);
socket.addEventListener(ProgressEvent.SOCKET_DATA,socketDataHandler);
}
internal function closeHandler(evt:Event):void
{
output("connect fail and close");
}
internal function connectHandler(evt:Event):void
{
output("connect success");
}
internal function ioErrorHandler(evt:IOErrorEvent):void
{
output("io error:"+evt.text);
}
internal function securityErrorHandler(evt:SecurityErrorEvent):void
{
output("security error :"+evt.text);
}
internal function doConnect():void
{
var server:String = server_txt.text;
var port:Number =Number(port_txt.text);
socket.connect(server,port);
}
internal function socketDataHandler(evt:ProgressEvent):void
{
var msg:String;
while(socket.bytesAvailable)
msg+=socket.readMultiByte(socket.bytesAvailable,"utf8");
var arr:Array = msg.split('\n');
for(var i:int=0;i<arr.length;i++)
{
if(arr[i].length>1)
{
var myPattern:RegExp=/\r/;
arr[i]=arr[i].replace(myPattern,'');
output(arr[i]);
}
}
}
internal function sendMessage(msg:String):void
{
var message:ByteArray= new ByteArray();
message.writeMultiByte(msg, "gb2312"); //指定字符编码集
message.length = 32;
socket.writeBytes(message);
socket.flush();
}
internal function output(msg:String):void
{
msg=msg+"\n";
output_txt.text+=msg;
}
]]>
</mx:Script>
<mx:Panel x="362" y="26" width="360" height="336" layout="absolute" title="输出信息" fontSize="12">
<mx:TextArea x="0" y="73" width="100%" height="213" id="output_txt" fontSize="12"/>
<mx:TextInput x="23" y="37" id="input_txt" text="输入信息" enter="sendMessage(input_txt.text)" fontSize="12"/>
<mx:Button x="246" y="37" label="发送" click="sendMessage(input_txt.text)" fontSize="12"/>
</mx:Panel>
<mx:Panel x="57" y="38" width="250" height="200" layout="absolute" title="登陆窗口" fontSize="12">
<mx:Label x="10" y="10" text="服务器地址" fontSize="12"/>
<mx:TextInput x="73" y="8" width="147" id="server_txt" text="127.0.0.1" fontSize="12"/>
<mx:Label x="10" y="51" text="端口" fontSize="12"/>
<mx:TextInput x="73" y="49" width="147" id="port_txt" text="8600" fontSize="12"/>
<mx:Button x="73" y="109" label="连接" click="doConnect()" fontSize="12"/>
</mx:Panel>
<mx:VSlider x="82" y="286" enabled="true"/>
</mx:Application>
分享到:
相关推荐
通过这个简单的Flex聊天室实例,你可以了解Flex的基础架构和开发流程,为进一步学习Flex和构建更复杂的RIA奠定基础。同时,这个项目也提供了一个实际操作的平台,让你能够将理论知识应用到实践中。
《基于Flex的Flash聊天室实现详解》 在Web开发领域,构建实时互动的聊天室是一项常见的需求,而基于Adobe Flex的Flash技术曾是实现此类应用的主流选择之一。本文将深入探讨如何使用Flex来创建一个功能完备的Flash...
二、FLEX聊天室架构 一个基于FLEX的聊天室系统通常由以下几个主要部分构成: 1. **服务器端**:负责处理用户请求,如接收消息、管理聊天室、处理用户登录和权限验证等。可以使用Flash Media Server或开源的Red5等...
Flex视频聊天室源码是一种基于Adobe Flex框架开发的实时通讯应用程序,主要用于实现视频聊天功能。Flex是基于ActionScript 3.0的开放源代码SDK,它允许开发者创建丰富的互联网应用程序(RIA),这些程序可以在多种...
在本文中,我们将深入探讨如何使用Red5部署一个基于Flex的简单聊天室源代码。Red5是一款开源的流媒体服务器,而Flex是一种用于构建富互联网应用程序(RIA)的开发工具,通常与Adobe Flash Player一起使用。这个示例...
FluorineFx+Flex视频聊天室源代码是一款基于开源RTMP服务器FluorineFx构建的多人在线交流平台,其主要特点在于提供实时的视频和文字聊天功能,同时还包括了小喇叭全服务器喊话这样的特色功能。让我们深入探讨一下这...
4. **房间管理**:创建、删除和切换聊天室,管理用户与房间的关联关系。 其次,Flex作为前端展示,它基于ActionScript语言和MXML标记语言,提供了丰富的图形用户界面和交互体验。`Client5.mxml`文件是Flex客户端的...
在“flex3 聊天室 视频,音频”这个项目中,我们看到的是一个集成了视频和音频功能的聊天室应用。 Red5是一个开源的流媒体服务器,它支持实时传输协议(RTMP),可以处理音频、视频和数据流。在Flex3聊天室中,Red5...
【Flex视频聊天室】是一个基于Adobe Flash Media Server (FMS) 开发的在线交互平台,主要功能是提供实时的文本和视频通信。这个项目的核心技术是Adobe Flex,它是一种用于构建富互联网应用程序(RIA)的开发框架,...
必须先装AIR flex聊天室,CS3脚本开发
在本项目"Flex实现的视频聊天室"中,开发者利用Flex的强大功能,创建了一个可供多人实时交流的在线视频聊天平台。这个聊天室允许用户通过网络摄像头分享视频,并进行音频通信,提供了类似于现实生活中面对面交谈的...
Flex + .NET 聊天室是一个集成技术的实例,它结合了Adobe Flex前端开发框架与Microsoft .NET后端技术,构建了一个实时的在线交流平台。在这个系统中,Flex作为用户界面层,提供了丰富的交互体验,而.NET则作为服务器...
【基于Flex4+Java的聊天通信程序】是一个融合了前端技术与后端技术的实时通讯应用,主要用于实现用户之间的互动交流。在这个系统中,Flex4作为客户端开发工具,提供了丰富的图形用户界面(GUI)和交互体验,而Java则...
实际学习时,你可能会从创建基本的Flex项目开始,然后逐步添加聊天功能,实现用户注册、登录,创建和加入聊天室,发送和接收消息,到最后的测试和部署。如果能访问到原文链接,将能得到更详尽的步骤和示例代码。
博文链接:https://xiaoa7.iteye.com/blog/247967
标题中的“flex、java聊天室”指的是一种基于Adobe Flex技术和Java实现的在线聊天应用程序。Flex是使用ActionScript编程语言和MXML标记语言构建富互联网应用程序(RIA)的开源框架,而Java则作为后端服务器端的技术...
Flex和FMS3是构建实时互动应用程序的强大工具,尤其适合创建在线聊天室这样的实时通信平台。这个源码和文档集合提供了详细的步骤和技术说明,帮助开发者理解如何利用这些技术实现一个功能完备的聊天室。 Flex是一种...
【标题】:“Flex图文混排聊天室客户端” 在IT领域,Flex是一种基于Adobe Flash Player运行时的开源框架,主要用于构建富互联网应用程序(RIA)。这个“Flex图文混排聊天室客户端”项目显然是一款使用Flex技术开发...