访问电影剪辑变量

时间:2011-04-17 11:03:15

标签: flash variables actionscript-2 movieclip

如何从其父级访问影片剪辑变量?我已经尝试了几种不同的方法,但仍然失败了。

2 个答案:

答案 0 :(得分:1)

MovieClip是一个动态对象,因此,如果您在动画片段上动态设置属性,或者即使您想要访问内置属性或方法,也只需直接引用父级中的子级即可。像这样:

var myMovie:MovieClip = this.myChildMovie;

trace(myMovie.myProperty);

myMovie.myProperty = 7;

trace(myMovie.myProperty);

基本上在AS3中我们有一个合适的显示列表,我们通过用于遍历显示列表的特定方法访问子节点和父节点。在as2中,基本上新的显示对象成为其父对象的动态属性。因此,您只需将其作为属性直接访问。但请注意,AS2和AS1在范围方面存在很大问题。使用术语"这个"可能会根据您使用它的位置而有所变化。这是一个上下文敏感的术语。范围也很容易丢失/混淆,尤其是在AS1中。例如,如果您输入作为属性附加到剪辑的函数,则在该函数的顶层,说"此"将参考功能对象(我相信,自从1/2天以来它已经很长时间了)。但是,如果您要在该函数内创建一个LoadVars对象,并输入该LoadVars对象的回调方法,则范围会再次更改,从而更改" this"的上下文。我知道这可能非常令人困惑,但是当你仔细考虑时,你会看到它。我建议学习AS3,你一开始就讨厌它,但后来想知道如果没有它你会如何相处。

无论如何这么短的课程版本:确保当你试图引用这个孩子时,你正在适当的范围内进行。如果你是一个非常新的闪存,请查看这个网站:

http://gotoandlearn.com/

AS2教程只有几页,但是,该网站应该拥有你需要的所有东西,让你坚定地站在闪光灯上。

答案 1 :(得分:0)

如果您只是想访问舞台上存在的动画片段,请在属性面板中为其指定实例名称,然后您可以使用myMovieclip.variable访问该变量。

如果您使用as2进行编程,请查看http://www.kirupa.com/developer/oop2/AS2OOPindex.htm