loadMoive的确是不用指定level的,因为制定了level就等于用loadMovieNum()了
这个后面会说。
loadMovie的用法一般有俩个:
一、直接在_root下loadMovie
设请求装载动画的文件为1.swf,被装载的为2.swf
那么loadMovie("2.swf",_root);
这以后你在1.swf中的一切操作对2.swf都不管用了,这一点不奇怪
因为loadMovie将2.swf装载到了level0,它已经将1.swf整个取代了
如果想控制2.swf,事先在2.swf做好就行了,也就是说,只能让本装载的电影“自己管理自己”。
二、将电影装载到mc中
例如场景中有一个mc,名字叫mc1
那么可以loadMovie("2.swf",_root.mc1);
这样,2.swf只作为1.swf中的一分子出现(相当于一个mc),而不是替代1.swf
你可以通过对mc1的操作来间接操作2.swf
例如做一个按钮
on(press)
{
_root.mc1.stop();
}
点击按钮时,2.swf的播放停止
另外,mc1的位置,扭曲,透明度等属性的变化也同样会作用到2.swf上。
下面来说loadMovieNum()
他是很多flash网站所采用的“组建系统结构”的核心部分
这涉及到flash的层级结构,也就是所谓的level0.level1...等等
用法如下
例如loadMovieNum("2.swf",1);
就是将2.swf装载到了level1中,而level1是高于level0的
所以原来1.swf中的内容如果处于2.swf中的内容占据的位置,会被覆盖掉。
而被新加载的电影左上角总是与_level0的左上角对齐的
这是不能改变的,因为电影实际上是被加载到一个新的级别中,而不是一个mc
事实上loadMovieNum根本没有加载到mc的用法
如果想加载到mc就用loadMovie
那么,用loadMovieNum()加载的swf怎么定位呢?
一种简单的办法就是,把2.swf和1.swf做成同样大小
然后人为的进行调整,使2.swf中的内容与1.swf内容位置上不冲突
例如1.swf的按钮在上方,2.swf的按钮在下方
那么在1.swf中用loadMovieNum加载2.swf中以后,两个按钮都可以正常的使用了
转自蓝色理想:原作者:jinni-神