如何访问 MovieClip (AS3) 中的变量
How to access variables within MovieClip (AS3)
我是 AS3 的新手,我想问一下如何通过名称访问 MovieClips 中的变量。
通常在 AS2 中,我使用其实例名称后跟 .(name of variable)
例如...
我在名为 my_mc
的 MovieClip 中有一个名为 baru 的变量。
通常我使用 my_mc.baru
来显示变量的值。
现在,我想知道如何在 AS3 中做到这一点
谢谢。
如果你只是喜欢在MovieClip里面写代码而不是*.as,你必须在MovieClip中手动添加一个TextField,将它的类型设置为Dynamic,然后在其中输入变量字符串,然后得到它使用:MovieClip.TextField.text 并且不要忘记:TextField.alpha=0.
这不是一个明智的方法。
在 AS3 中,您需要注意一些独立但相关的事情:
所有显示objects(包括MovieClip
)可以有一个name
属性.
var mc:MovieClip = new MovieClip();
mc.name = "myMC";
myContainer.addChild(mc);
您可以通过 name
在其 parent 上使用 getChildByName()
找到 child。
var myMC:MovieClip = myContainer.getChildByName("myMC");
MoveClip
个实例可以有 dynamic properties 指向 children(或任何东西)。
myContainer.myMC = myMC;
(请注意,其他显示 object 类型,例如 Sprite
, 不 允许动态属性。相反,您需要创建自定义 class 具有 class 属性。)
当您在代码中创建显示 object 时(如上所示),parent 上的 name
或 属性 都不会被自动创建。您可以手动完成,如上所示。
当你在创作工具中放置一个符号实例并给它一个 "instance name", both name
and parent 符号上的 属性 将由 "instance name" 分配。在这种情况下,您不能更改代码中的 name
。
请注意,在 AS2 中使用 createEmptyMovieClip
或 attachMovie
会分配 _name
并在 parent,但没有等同于这些函数的 AS3。 这就是很多混淆的地方。
正如您所看到的,它的工作方式实际上与 AS2 没有什么不同,只是 AS2 具有为您做几件事情的功能(创建并添加 MovieClip,设置 name
并添加 属性 在 parent 上)。 AS2 的问题是创建后不能 re-parent 和 object,这是一个很大的限制。在 AS3 中,您可以自由移动东西。
我是 AS3 的新手,我想问一下如何通过名称访问 MovieClips 中的变量。
通常在 AS2 中,我使用其实例名称后跟 .(name of variable)
例如...
我在名为 my_mc
的 MovieClip 中有一个名为 baru 的变量。
通常我使用 my_mc.baru
来显示变量的值。
现在,我想知道如何在 AS3 中做到这一点
谢谢。
如果你只是喜欢在MovieClip里面写代码而不是*.as,你必须在MovieClip中手动添加一个TextField,将它的类型设置为Dynamic,然后在其中输入变量字符串,然后得到它使用:MovieClip.TextField.text 并且不要忘记:TextField.alpha=0.
这不是一个明智的方法。
在 AS3 中,您需要注意一些独立但相关的事情:
所有显示objects(包括
MovieClip
)可以有一个name
属性.var mc:MovieClip = new MovieClip(); mc.name = "myMC"; myContainer.addChild(mc);
您可以通过
name
在其 parent 上使用getChildByName()
找到 child。var myMC:MovieClip = myContainer.getChildByName("myMC");
MoveClip
个实例可以有 dynamic properties 指向 children(或任何东西)。myContainer.myMC = myMC;
(请注意,其他显示 object 类型,例如
Sprite
, 不 允许动态属性。相反,您需要创建自定义 class 具有 class 属性。)当您在代码中创建显示 object 时(如上所示),parent 上的
name
或 属性 都不会被自动创建。您可以手动完成,如上所示。当你在创作工具中放置一个符号实例并给它一个 "instance name", both
name
and parent 符号上的 属性 将由 "instance name" 分配。在这种情况下,您不能更改代码中的name
。请注意,在 AS2 中使用
createEmptyMovieClip
或attachMovie
会分配_name
并在 parent,但没有等同于这些函数的 AS3。 这就是很多混淆的地方。
正如您所看到的,它的工作方式实际上与 AS2 没有什么不同,只是 AS2 具有为您做几件事情的功能(创建并添加 MovieClip,设置 name
并添加 属性 在 parent 上)。 AS2 的问题是创建后不能 re-parent 和 object,这是一个很大的限制。在 AS3 中,您可以自由移动东西。