终于又回到flash里边了。
flash里边,插入元件,或者将舞台上一个元素转化为元件的时候,有3个选项:影片剪辑、按钮、图形。选中舞台上一个影片剪辑或按钮的话,打开属性面板,能看到一个输入框,可以输入实例名称,这样,我们就可以为这个元件的实例起一个名字,然后就可以通过这个名字来找到相应的元件实例进行控制。
听着挺麻烦,做起来很简单。
1、创建一个影片剪辑,在影片剪辑里边做一个补间动画;
2、在舞台上放两个影片剪辑的实例(直接从库里边拖到舞台上);
3、为两个实例起两个不同的名字(名字一定不能一样);如ball1和ball2,(因为我在影片剪辑里画了两个圆);
4、在主场景第一帧写代码:ball2.stop();
5、调试一下,看看效果。应该能看到一个在播放动画,一个停在第一帧没动。
扩展:
1、上面的例子是ball1和ball2放在舞台上,代码写在主场景的时间轴上。如果元件实例不在舞台上,而是在影片剪辑内部,该怎么控制呢?
例:如舞台上有一个“影片剪辑1”的实例,实例名是mc,mc里边有一个“影片剪辑2”的实例,实例名是ball2,其中ball2内部做了一个补间动画,这时我们想要控制ball2停止播放。方法如下:
方法1)在主场景时间轴第一帧写代码:mc.ball2.stop();
方法2)在mc的时间轴第一帧写代码:ball2.stop();
方法3)在ball2的时间轴第一帧写代码:stop();
对比一下3种方法,虽然在这里效果是一样的,但是是有区别的:
方法1只控制了实例mc中的ball2停止播放;
方法2控制了“影片剪辑1”的所有实例中的ball2停止播放;
方法3控制了所有的“影片剪辑2”的实例停止播放。
可以自己试着在舞台上多放几个实例,对比一下效果。
一般推荐使用第一种方法,控制起来更灵活,代码逻辑也好管理,除非你很确定其他两种做法能带来好处。
2、上例中,能否在ball2中控制mc,以及控制主场景?答案是:能。方法很多,以后再说。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。