今儿个咱来聊聊 Flash 里的 attachMovie 这玩意儿。一开始接触这东西的时候,我也有点懵,后来捣鼓明白,发现还挺有意思的,所以今天就来跟大家分享一下我的实践过程。
得搞清楚 attachMovie 是干啥的。简单来说,就是能把 Flash 库里面的影片剪辑(MovieClip)给拽到舞台上来。这就好比变魔术,本来库里藏着个东西,你一念咒语(运行代码),“唰”的一下就出来!
实践开始
第一步,咱得先有个“魔术道具”。
在 Flash 里,我新建一个影片剪辑元件,随便画个圆,然后在库里右键,选“链接...”,勾上“为 ActionScript 导出”,给它起个名字,比如叫“myCircle”。
第二步,开始“念咒语”。
- 我新建一个 ActionScript 文件(.as 文件),这样代码看起来清楚点。
- 然后,在里面写上这么几行代码:
啥意思?
this
指的是当前这个影片剪辑(或者说场景)。
attachMovie("myCircle", "circle1", 1)
就是“咒语”!
"myCircle"
是我在库里给那个圆起的名字。"circle1"
是我给拽到舞台上的这个圆起的新名字,这样方便以后控制它。1
是深度,你可以理解成图层,数字越大,图层越靠上。
第三步,见证奇迹!
我把这个 AS 文件链接到 Flash 文档,然后运行。Duang!一个圆就出现在舞台上!
更进一步
光拽出来一个圆还不够过瘾,咱得让它动起来!
我修改代码:
*("myCircle", "circle1", 1);
circle1._x = 100; // 设置圆的 x 坐标
circle1._y = 100; // 设置圆的 y 坐标
* = function() { // 给圆添加一个逐帧事件
this._x += 5; // 让圆每帧向右移动 5 个像素
这下,圆就沿着 X 轴跑起来!
一点小感悟
attachMovie 这东西,就像搭积木,你可以从库里拽出各种各样的元件,然后用代码控制它们的位置、大小、动作等等,组合出各种各样的效果。这只是最基本的用法,更高级的玩法还有很多,比如结合 initObject 参数传递数据等等,以后有机会再跟大家分享。
实践出真知!多动手试试,你会发现 Flash 的世界还是挺精彩的!