在Flash CS4中使用加载程序组件时出现问题

时间:2011-06-11 13:31:06

标签: flash actionscript-2 external loader

我在使用Flash CS4中的Loader组件时遇到问题。以下是详细信息:


源代码:

var mcLoader:MovieClipLoader = new MovieClipLoader();    
mcLoader.loadClip("Gallery.swf",myLoader);

备注:

  1. “Gallery.swf”是我需要加载的文件的名称。
  2. “myLoader”是我正在使用的加载程序组件的名称。
  3. 我的外部swf舞台(“Gallery.swf”)的尺寸与(“myLoader”)组件的尺寸相同。

  4. 问题:

    1. 文件加载了错误的缩放字体和组件大小。
    2. 加载文件的所有Actionscript根本不起作用。 (请注意,文件在加载到另一个项目时完全可以正常工作,它会搞砸了。)

    3. 非常感谢任何想法或建议。如果需要更多详细信息,请与我们联系。 在此先感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

Actionscript 3加载外部swf

var req : URLRequest = new URLRequest("Gallery.swf");
var loader : Loader = new Loader( );
loader.load(req);
addChild(loader);

如果您想缩放或设置位置,可以参考现有的加载器组件(您不必使用 myLoader )。

loader.scaleX = 0.5;
loader.scaleY = 0.5;
loader.x = 100;
loader.y = 100;

使用事件侦听器检测加载何时完成至关重要。

var req : URLRequest = new URLRequest("Test2.swf");
var loader : Loader = new Loader( );
loader.contentLoaderInfo.addEventListener(Event.COMPLETE , swfLoaded);
loader.load(req);

function swfLoaded( ev: Event ):void
{
  addChild(loader); 
}

如果您想使用某个方法或引用您孩子swf的对象,请将您的内容添加到内容中。

function swfLoaded( ev: Event ):void
{
  var swf : MovieClip = MovieClip(loader.content);
  swf.play();   
}

这样您可以参考您的孩子时间表。 如果遇到问题,请尝试对对象进行类型转换。

swf文件必须使用相同的Actionscipt版本才能生效!