Flex与Flash AS2之间的交互通信

Flex与Flash AS2之间的交互通信

 

Flash可以做很多丰富的动画效果,这是Flex不可比拟的,但并不说明Flex不能实现,只是有点儿复杂而已,因此我们想要的最好期望就是Flex中可以任意使用Flash,并且他们之间可以随意交互,在之前的一篇文章中写过Flash与Flex之间的交互,但那种方法只限于AS3,在AS2中并不可取,最近有一个需求是需要AS2的flash与Flex的交互,经过仔细的研究和资料查询,发现一种交互方法,现在贴出来供大家分享

 

在AS2与Flex交互所用到的就是LocalConnection对象,该对象具体有哪些方法、属性、事件等大家不妨自己去查一下帮助文档,这里就不在叙述了,先说一下在Flash中调用Flex类中的方法,参考代码如下:

Flash中代码:

Var localConn:LocalConnection=new LocalConnection();

t.fm_button.onRelease = function()

              {

                     localConn .send("lc_from_flash","ShowDetails",1);                  

              }

其中“lc_from_flash”是建立连接的字符串,该字符串必须与Flex中connect()方法中所需参数一致。“ShowDetails”为Flex提供的Public方法,关于LocalConnection是Send方法大家可以查一下帮助

 

Flex中代码:

private var _localConnection:LocalConnection;

           protected function InitApp(event:FlexEvent):void

           {

              // TODO Auto-generated method stub

              _localConnection=new LocalConnection();

              _localConnection.connect("lc_from_flash");

              _localConnection.client=this;

           }

          

           public function ShowDetails(param:Number):void{

              Alert.show(param.toString());

           }

如此便可实现Flash与Flex之间的通信,并且不会受制于AS的 版本

 

如果实现Flex调用Flash中的公共方法,只要反过来即可,有兴趣的童鞋们可以自己试一下!

posted @ 2010-08-12 15:04  鬼手如冰  阅读(940)  评论(0编辑  收藏  举报