马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
不是MX版本升级到MX2004时的那么简单,而是实现了新的飞跃。
poluoluo中心提醒:as2完成加载与被加载swf通讯.
事情中碰到必要使加载与被加载swf(as2编写)外部变量相互挪用的成绩,利用loadMovie,以下是我理论的代码: ==========================================================================
在as2中,不管你用loadMovie仍是loadClip加载出去一个swf,只需晓得他们的层级干系,都能够用this、_parent等轻松互相把持。上面以main.swf和sub.swf为例:
varmy_mcl:MovieClipLoader=newMovieClipLoader();
varmclListener:Object=newObject();
//加载终了
mclListener.onLoadInit=function(target_mc:MovieClip):Void{
main_btn.onRelease=function(){
sub_mc.mainCallSub();//点击main.swf主场景名为main_btn的按钮,挪用sub.swf主场景名为mainCallSub的函数
}
}
my_mcl.addListener(mclListener);
sub_mc._lockroot=true;//锁定被加载swf的主工夫轴,让_root一致指向main.swf的主工夫轴
my_mcl.loadClip("sub.swf",sub_mc);//把sub.swf加载到main.swf主场景名为sub_mc的剪辑中。
//被sub.swf会见的函数
functionsubCallMain(){
trace("subCallMain!");
}
sub_btn.onRelease=function(){
this._parent._parent.subCallMain();//点击sub.swf主场景名为sub_btn的按钮,挪用main.swf主场景名为subCallMain
的函数
//固然,也能够间接一点,用_root.subCallMain();但条件是main.swf上加上sub_mc._lockroot=true;否则会见的是本人的工夫轴
}
//被sub.swf会见的函数
functionmainCallSub(){
trace("mainCallSub!");
}
varloader:MovieClip=this.createEmptyMovieClip("loader",1);//创立一个空影片剪辑,深度为1
loader.loadMovie("login.swf");//加载同文件夹下的login.swf
this._lockroot=true;//此句必不成少,暗示对已加载影片中_root的援用城市指向已加载影片的_root,而不是加载器的_root
_root._parent.welcome.text=".......";//此句能够完成对main.swf中welcome实例的值举行设置
_root.unloadMovie();//此句能够卸载login.swf
AdobeFlashProfessionalCS5.5软件可以提供行业领先、用于制作具有表现力的交互式内容的授权环境。 |