随笔 - 8  文章 - 55  trackbacks - 0
<2024年4月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

常用链接

留言簿(6)

随笔分类

随笔档案

文章分类

文章档案

朋友的Blog

最新评论

阅读排行榜

评论排行榜

attachMovie外部swf中的元素

作者: jimbob  时间: 2006-04-19 文档类型:原创 来自: 蓝色理想
浏览统计 total:3014 | year:3014 | Quarter:364 | Month:364 | Week:87 | today:10

作者的个人站点: http://jim.blueidea.com/

相信大家都用过attachMovie这个语句,可以方便的绑定库中带Linkage输出的元素, 在一些游戏以及交互程度比较高的网站中经常会用到。 那么这里就遇到一个问题,假如我在sub.fla库里面用linkage设定了几个元素, 然后想在main.fla里面attachMovie这几个元素,该如何处理尼?

第一种方法,main.fla使用 loadMovie(); 或 loadMovieNum();先导入 sub.swf, 然后导入完成后,再使用attachMovie来绑定元素。 但是这种方法,使用受到一个很大的限制,就是只能在 loadMovieNum()语句导入所在的层,或者loadMovie()语句导入所在的mc上面使用attachMovie, 比如:

loadMovieNum("sub.swf",1);
_level1.attachMovie("cc","cc1",5);

是有效的

 loadMovieNum("sub.swf",1);
_level0.attachMovie("cc","cc1",5);

是无效的

同样:

loadMovie("sub.swf", "abc");
_root.abc.attachMovie("cc", "cc2", 50);

是有效的

loadMovie("sub.swf", "abc");
_root.attachMovie("cc", "cc2", 50);

是无效的

第二种方法,使用Export for runtime sharing的方式,方法如下:

在sub.fla中,设置好需要attach元素的 Linkage值,并选定 Export for ActionScript  以及 Export in first frame这两项
然后,在sub.fla中新建一个空的mc, 在库中设置这个空mc的linkage值为 ext  ,选定 Export in first frame 以及 export for runtime sharing, URL这一项则填写为 sub.swf 如图:

在main.fla中,新建一个空的mc,在库中设置这个空mc的linkage值为 ext ,然后选定 Import for runtime sharing , URL一项填为 sub.swf 如图:

然后在main.fla中,再新建一个mc,从库中把刚才的ext这个空mc拖放到新建的这个mc中,然后把这个新mc任意设置一个linkage值,然后选定Export for ActionScript  以及 Export in first frame这两项。
做好以上的两步,就可以在main.fla里面任意attach sub.fla里面的可用元素了,比如:

attachMovie("cc","cc", 1);
attachMovie("bar","bar", 2);

第三种方法, 采用上面的第二种方法虽然已经很理想了,不过还是有一个限制,那就是必须编辑 sub.fla,加入 ext这个空mc, 那么有没有方法绕过去,可以不需要改动sub.fla,直接在main.fla里面做文章尼?  下面就介绍第三种实用方法:

假定我们现有一个tt.swf这个文件,里面库中设置了 linkage 为 a,b,c 的三个可用元素, 那么用下面的方法,可以不修改tt.fla,直接attach tt.swf里的这三个元素

我们打开主控文件mm.fla, 新建一个空mc,然后在库中设置linkage值为 a (或者b或者c,只要保持和tt.swf里面的某个linage值同名即可) ,然后选定 Import for runtime sharing , URL一项填为 tt.swf,如图:

然后在mm.fla中,再新建一个mc,从库中把刚才的a这个空mc拖放到新建的这个mc中,然后把这个新mc任意设置一个linkage值,然后选定Export for ActionScript  以及 Export in first frame这两项。
然后就可以在mm.fla里面任意attach tt.fla里面的可用元素了,比如:

_root.attachMovie("c", "c", 1);
_root.attachMovie("a", "a", 11);
_root.attachMovie("b", "b", 111);

本教程第二以及第三种方法,提供源文件下载,有兴趣可以到 下载 (注源文件为flash8格式)

posted on 2006-07-29 11:46 blog搬家了--[www.ialway.com/blog] 阅读(268) 评论(0)  编辑  收藏 所属分类: AS2.0

只有注册用户登录后才能发表评论。


网站导航: