as3加载swf的菜鸟问题,100分感谢
我用as3做一个swf,加载从网上下载下来的swf(不知道是as2还是as3脚本),碰到两个问题,请各位大侠帮忙解决,先谢谢了。
第一,加载进来的swf无法控制大小和位置
第二,加载进的的swf如果是有互动的flash小游戏,就不能玩了,就是说里面原来的按钮和键盘操作都无效了。
var jz:URLRequest=new URLRequest("1.swf");//同目录调用
var jzdx:Loader=new Loader();
jzdx.load(jz);
an_btn.addEventListener(MouseEvent.CLICK,an);
function an(event:MouseEvent) {
jzdx.width=jz_mc.width; //用一个空的mc来控制大小和位置,但好像没有用
jzdx.height=jz_mc.height;
jzdx.x=jz_mc.x;
jzdx.y=jz_mc.y;
addChild(jzdx);
}
[解决办法]
swf的控制得在加载完成之后
做个进度条 判断空MC是否加载完成 加载完成之后就能控制了
控制方法和你直接控制那个空MC是一样的 里面的按钮和键盘操作也能正常使用了
[解决办法]
mark
[解决办法]
参考:
import flash.display.Loader;import flash.events.*;import flash.net.URLRequest;var loader:Loader = new Loader();loader.contentLoaderInfo.addEventListener(Event.COMPLETE,onComplete);loader.load(new URLRequest("Brown.swf"));function onComplete(e:Event):void{ addChild(loader); loader.width = 100; loader.height = 100; }
[解决办法]
使用AS载入SWF,参考一下下面的代码:
import flash.net.URLRequest;import flash.display.Loader;import flash.events.Event;import flash.events.ProgressEvent;function startLoad(){var mLoader:Loader = new Loader();var mRequest:URLRequest = new URLRequest(“MouseActions.swf”);mLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onCompleteHandler);mLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, onProgressHandler);mLoader.load(mRequest);}function onCompleteHandler(loadEvent:Event){ addChild(loadEvent.currentTarget.content);}function onProgressHandler(mProgress:ProgressEvent){var percent:Number = mProgress.bytesLoaded/mProgress.bytesTotal;trace(percent);}startLoad();