flash - "external"swf AS3 中的访问符号

标签 flash actionscript-3

我可以做两件事。加载外部 swf,并更改对象的颜色。当我把这两件事放在一起时,它不起作用。 如何更改加载的 swf 的颜色? 我想访问加载的 swf 文件中的实例名称。

我被告知的内容
我必须将其打包并设置类路径。现在有简单的方法吗?

alt text http://www.ashcraftband.com/myspace/videodnd/ball.jpg

球.swf

"white ball on the stage named blueball"

load.fla

//load ball.swf
var bgLoader:Loader = new Loader();
bg_mc.addChild(bgLoader);
var bgURL:URLRequest = new URLRequest("ball.swf");
bgLoader.load(bgURL);

//change color of ball to blue "code works in ball.swf" 
var myColor:ColorTransform = blueball.transform.colorTransform; 
myColor.color = 0x066ccf; 
blueball.transform.colorTransform = myColor;

错误#1120
访问未定义的属性

注意
swf 文件都是actionscript-3。我已经尝试过发布和安全设置。

实验“了解在外部 swf 文件中使用符号”

最佳答案

您缺少“root”,加载 swf 后,您可以使用 root 到达时间线范围。考虑以下因素:

var bgLoader:Loader = new Loader();
bg_mc.addChild(bgLoader);
var bgURL:URLRequest = new URLRequest("ball.swf");
bgLoader.load(bgURL);
bgLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaded);

function onLoaded(event:Event):void
{
    // use root to reach the timeline scope of the loaded swf
    var loadedBlueball:MovieClip = event.target.content.root.blueball;
    //change color of ball to blue "code works in ball.swf" 
    var myColor:ColorTransform = loadedBlueball.transform.colorTransform; 
    myColor.color = 0x066ccf; 
    loadedBlueball.transform.colorTransform = myColor;

    // just adding the ball to stage, you might want to add all swf
    addChild(loadedBlueball);
}

“在 ActionScript 3 中,根属性指的是已加载 SWF 的主时间线(而不是加载其他 SWF 的 SWF 的时间线)。” 来自 http://www.adobe.com/devnet/actionscript/cookbook/timeline_root.html

关于flash - "external"swf AS3 中的访问符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2313317/

相关文章:

javascript - 如何判断 swf 何时完成从 javascript 的加载?

apache-flex - 添加到集合时排序集合和排序保持原位?

actionscript-3 - 如何在AS3中缓存音频流数据并访问它

javascript - 如何保持 HTML 页面中 SWF 文件的大小?

flash - AS3 从音轨中间开始和停止音频

actionscript-3 - 使用 if 语句未定义的属性或对象仍然给出错误

actionscript-3 - 为真实世界还是适当的OOP世界建模?或两者?

flash - 为什么我不应该使用 Flash?

jquery - Uploadify 不适用于受密码保护的网站

flash - as3 : how to emulate MouseEvents?