flex与flash间通信(使用LocalConnection)的例子

使用LocalConnection我们可以很方便的实现Flex与Flash之间的通信,既可以从Flex发消息到Flash中,也可以从Flash发消息到Flex端。下面通过一个样例来演示使用方法。

 效果图如下:

--- Flash端 movie.swf ---

 代码如下 复制代码

//创建LocalConnection对象,接受flex消息
var localConn:LocalConnection = new LocalConnection();
 
//localConnt添加一个停止函数
localConn.stopMove = function() {
    stop();
}
 
//localConnt添加一个继续函数
localConn.resumeMove = function() {
    play();
}
 
//连接名为flexToSwf的 连接
localConn.connect("flexToSwf");
  
ball.onRelease = function() {
    //发送消息给flex端
    var sendLC:LocalConnection = new LocalConnection();
    sendLC.send( "flashConn", "clickBall" );
}

--- Flex端 F.mxml ---

 代码如下 复制代码

<?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.net.LocalConnection;
            //创建一个发送消息的本地链接
            private var sendConn:LocalConnection;
            //创建一个接收消息的本地连接
            private var receiverConn:LocalConnection
             
            internal function initApp():void{
                //初始化变量
                sendConn = new LocalConnection();   
                receiverConn = new LocalConnection();
                //LocalConnection接受函数调用的时候必须指定client属性
                receiverConn.client = this;
                //连接名为flashConn的连接
                receiverConn.connect("flashConn");
            }
             
            //停止
            internal function stopMove():void{
                sendConn.send("flexToSwf","stopMove");
            }
             
            //继续
            internal function doResume():void{
                sendConn.send("flexToSwf","resumeMove");
            }
             
            //点击小球,这个函数被swf调用
            public function clickBall():void{
                sendConn.send("flexToSwf","stopMove");
                 
            }
        ]]>
    </mx:Script>
     
    <mx:SWFLoader x="30" y="10" source="movie.swf"/>
    <mx:Button x="30" y="301.5" label="停止动画" click="stopMove()"/>
    <mx:Button x="126" y="301.5" label="继续动画" click="doResume()"/>   
</mx:Application>

时间: 2024-11-30 16:49:38

flex与flash间通信(使用LocalConnection)的例子的相关文章

求助winfrom和flash间通信的问题

问题描述 CallFunction的方式一直报错对COM组件的调用返回了错误HRESULTE_FAIL.网上找到的解决办法也是无效希望能在这边找到帮助另外如果我要穿的数据不是字符串的而是文件的话应该怎么处理呢求牛人们帮帮忙privatevoidcallFunction(stringfunName,stringarg){//C#传给Flash的值axShockwaveFlash1.CallFunction(EncodeInvoke(funName,arg));//axShockwaveFlash1

JavaScript和Flash的通信

javascript 说明: 略作修改,主要是一些很初级的操作; 又很多相似的文章,不过这个很权威 下面是一些在Flash和使用javascript的HTML文件直接通信的示例,每个示例都有简略的步骤 本文讨论了3种基本的Flash/javascript通信方式: > javascript 到 Flash的通信----使用Flash播放器的javascript方法 > Flash 到 javascript的通信----使用Flash的fscommand > Flash 到 Flash的通

关于 JavaScript 和 Flash 间的通信

javascript 本文讨论了3种基本的Flash/Javascript通信方式: Javascript 到 Flash的通信----使用Flash播放器的javascript方法 Flash 到 Javascript的通信----使用Flash的fscommand Flash 到 Flash的通信----------使用本地连接对象或综合上2种技术 前言.JavaScript和Macromedia Flash的通信示例 原文地址: http://www.macromedia.com/supp

JavaScript 和 Flash 的通信

javascript <embed src="http://www.webjx.com/htmldata/2005-04-09/javascript_to_flash.swf" quality=highwidth=366 height=142type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P

什么是.Net的异步机制(线程间通信)

前几篇文章我已经对异步的操作进行的详细的解释.异步操作也是线程的一种,当我们开始一个异步操作(新线程),完成调用后需要和其他线程通信(可能需要告知状态信息),这时候我们就需要线程间的通信编程. 线程间通信 我们看下面的图 图1 我们来看线程间通信的原理:线程(Thread B)和线程(Thread A)通信, 首先线程A 必须实现同步上下文对象(Synchronization Context), 线程B通过调用线程A的同步上下文对象来访问线程A,所有实现都是在同步上下文中完成的.线程B有两种方式

Flex/AS3/flash player支持屏蔽右键菜单,自定义菜单,并设置相应的菜单事件(示例,图解)

Flex/AS3/flash player支持屏蔽右键菜单,自定义菜单,并设置相应的菜单事件(示例,图解) 播放器 版本 11.2以后支持右键菜单屏蔽及自定义菜单 1.更新播放器 ,11.2 以上版本 http://download.macromedia.com/get/flashplayer/updaters/11/playerglobal11_3.swc http://download.macromedia.com/get/flashplayer/updaters/11/playerglob

java线程间通信[实现不同线程之间的消息传递(通信),生产者和消费者模型]

线程通信,线程之间的消息传递: 多个线程在操作同一个资源,但对共享资源的操作动作不同:它们共享同一个资源,互为条件,相互依赖,相互通信让任务向前推进. 线程的同步,可以解决并发更新同一个资源,实现线程同步;但不能用来实现线程间的消息传递. 线程通信生产者和消费者和仓库是个典型模型: 生产者:没有生产之前通知消费者等待,生产产品结束之后,马上通知消费者消费 消费者:没有消费之前通知生产者等待,消费产品结束之后,通知生产者继续生产产品以供消费 线程通信:使用java中Object中提供的: publ

volatile关键字与线程间通信

Java内存模型 现在计算机普遍使用多处理器进行运算,并且为了解决计算机存储设备和处理器的运算速度之间巨大的差距,引入了高速缓存作为缓冲, 缓存虽然能极大的提高性能,但是随之带来的缓存一致性的问题, 例如,当多个处理器同时操作同一个内存地址,可能会导致各自的缓存数据不一致,由此产生冲突问题, 内存模型就是定义一套充分必要的规范,这些规范使得其他处理器对内存的写操作对当前处理器可见,或者当前处理器的写操作对其他处理器可见. 类似物理上的计算机系统,Java虚拟机规范中也定义了一种Java内存模型,

按钮-fragmen间通信的问题 listview

问题描述 fragmen间通信的问题 listview fragment中listview里的item里的按钮点击后,将该item中textview的值传到另一个fragment里的listview里的item中的textview上.说的有点绕.两个fragment的listview的item有配有adapter.怎么实现 解决方案 fragment 之间的通讯请参考:开发教程]Fragments间的交互" rel="nofollow">[Android 开发教程]Fr