由薛公子在 http://www.flexcoders.cn/showtopic-1227.aspx### 上提供
通过主影片来获得所有子影片的systemmanager,然后分别传递给各个子影片。子影片通过各自的systemmanager来调用别的影片。
子模块
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
import mx.managers.SystemManager;
public function output(s:String):void{
trace(s);
}
public function CallFriend():void{
SampleChildren(_SystemManager.application).output("call...");
}
private var _SystemManager:SystemManager;
public function register(ASystemManager:SystemManager):void{
_SystemManager=ASystemManager;
}
]]>
</mx:Script>
</mx:Application>
主模块
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical">
<mx:Script>
<![CDATA[
import mx.managers.SystemManager;
var Children1,Children2:SystemManager;
private function onClick(e:Event):void{
SampleChildren(Children1.application).register(Children2);
SampleChildren(Children2.application).register(Children1);
}
private function initNestedAppProps():void {
Children1 = SystemManager(myLoader.content);
trace(Children1.application);
}
private function initNestedAppProps2():void {
Children2 = SystemManager(myLoader2.content);
trace(Children2.application);
}
private function onC1(e:Event):void{
SampleChildren(Children1.application).CallFriend();
}
private function onC2(e:Event):void{
SampleChildren(Children2.application).CallFriend();
}
]]>
</mx:Script>
<mx:Button label="ClickMe" click="onClick(event);"/>
<mx:Button label="c1 call c2" click="onC1(event);"/>
<mx:Button label="c2 call c1" click="onC2(event);"/>
<mx:SWFLoader id="myLoader" width="300"
source="SampleChildren.swf"
creationComplete="initNestedAppProps();"/>
<mx:SWFLoader id="myLoader2" width="300"
source="SampleChildren.swf"
creationComplete="initNestedAppProps2();"/>
</mx:Application>
分享到:
相关推荐
在Adobe Flex Builder 3中,开发富互联网应用程序(RIA)时,经常需要在不同组件之间交换数据或参数。这是构建动态、交互式用户界面的关键环节。本教程将深入探讨Flex中组件之间的参数传递机制,帮助你更好地理解和...
为了使Flex应用能够访问这些参数,我们需要借助JavaScript与ActionScript之间的交互。 `ExternalInterface`类在ActionScript和JavaScript之间架起了桥梁,允许它们直接通信。在Flex中,我们可以通过`...
在Flex应用内部,这些参数可以通过`flash.system.ApplicationDomain.currentDomain.getParameters()`访问。 2. **FlashVars**: `flashVars`是SWF对象在HTML中加载时接收参数的常见方法。例如: ```html ...
由于Flash Player和浏览器之间的安全限制,Flex程序不能直接访问URL中的参数。因此,需要借助JavaScript作为中间层来读取这些参数。JavaScript可以通过`window.location`对象获取当前页面的URL,然后解析出参数部分...
<object id="myFlexApp" data="FlexApplication.swf" width="640" height="480"> ``` Flex应用代码: ```actionscript <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"> <![CDATA[ import flash...
总的来说,通过理解Flex与JavaScript之间的交互机制,以及如何利用`ExternalInterface`类,我们可以轻松地从HTML容器中获取URL参数,并在Flex应用程序中使用它们。这在实现动态交互和数据传递时非常有用,特别是在...
// Flex调用js函数sayHelloWorld,并且传递参数params ExternalInterface.call("sayHelloWorld", "params"); } // 真正的供js调用的Flex里的函数 public function jsCallFlex():void { button.label = "js ...
- **数据传递**:参数可以通过函数调用传递,JavaScript 和 Flex 之间可以交换字符串、数值、甚至是复杂对象(需序列化)。 2. **参数传递**: - **基本类型**:JavaScript 和 Flex 支持的基本数据类型(如字符串...
Flex是Adobe公司开发的一种富互联网应用程序(Rich Internet Application,RIA)框架,主要用于创建交互式的、动感十足的Web应用。在本教程中,“五分钟用Flex构建WebService应用”将带你快速掌握如何利用Flex与...
由于 BlazeDS 需要将 Java 接口 FlexService 暴露给 Flex 前端,因此,我们在配置文件 remoting-config.xml 中将 FlexService 接口声明为一个服务: 清单 6. 定义 flexService 服务 <destination id="flex...
1. 创建一个新的Flex项目,并在MXML文件中引入必要的命名空间,如`<s:Application>`和`<mx:ColumnChart>`。 2. 定义数据源,通常是数组集合或XML列表,其中包含要显示的数据。 3. 添加`<mx:BarSeries>`或`...
例如,更改Flex编译器的“附加编译器参数”,指定Flex项目的本地路径。 3. 在Flex服务器选项中,更新BlazeDS WAR文件的路径,指向Tomcat`webapps`下的`blazeds.war`。 4. 如果需要,你还需要在Java Build Path中修改...
它负责在浏览器中加载Flex应用程序的SWF文件,并且处理与服务器的AMF(Action Message Format)通信,这是一种高效的数据交换协议,用于在Flex客户端和Java服务器之间传递复杂的数据结构。 `flex-sdk-merged.jar` ...
9. **乱码问题**:当你遇到后台(例如JSP)传回Flex的数据出现乱码时,可能需要确保请求参数使用正确的编码,例如`request.getParameter("name").getBytes("ISO8859-1")`转成`utf-8`,或者设置`request.setCharacter...
在JavaScript(JS)和Adobe Flex之间进行通信是一个常见的需求,特别是在构建富互联网应用程序(RIA)时。Flex是一种基于ActionScript的开发框架,用于创建交互式的、可自定义的UI组件,而JavaScript则广泛用于Web...
总结,Flex 文件上传下载功能提供了灵活的接口,使得开发者能够轻松地实现客户端与服务器之间的文件交互。通过优化这些操作,可以有效地减少服务器资源的消耗,提升服务器的响应速度,从而提高用户体验。在实际应用...
通过 RemoteObject 进行调用虽然简单,但存在不少问题:首先,RemoteObject 是一个 Dynamic Class,Flex Builder 的编译器无法替我们检查参数类型和参数个数,这样,在编写 ActionScript 代码时极易出错。...
本文将详细介绍如何通过Remoting方式实现Flex与ASP.NET之间的通讯。 #### 二、技术栈准备 为了实现Flex与ASP.NET的通讯,我们需要准备以下技术环境: 1. **Flex平台**:Adobe Flex Builder 3。这是Adobe提供的一...
2. **建立通信通道**:在Flex应用中,你需要创建一个Bridge实例,通常在Application的初始化阶段完成。在JavaScript端,也需要创建一个对应的Bridge实例,两者通过相同的命名空间进行匹配,建立起通信的桥梁。 3. *...