Noob问题(可能)。我有一个var textFieldObjets:Textfield
一类在我的课环境在通过另一个班级访问变量类
我想什么做的,是从另一个类访问此var和更改文本。我尝试了像environnement.textFieldObjets.text = "blabla";
得到的错误1119,访问一个可能的未定义属性textFieldObjets通过与静态类型类的引用。我甚至无法访问我的环境类...
我该怎么做?谢谢!
Noob问题(可能)。我有一个var textFieldObjets:Textfield
一类在我的课环境在通过另一个班级访问变量类
我想什么做的,是从另一个类访问此var和更改文本。我尝试了像environnement.textFieldObjets.text = "blabla";
得到的错误1119,访问一个可能的未定义属性textFieldObjets通过与静态类型类的引用。我甚至无法访问我的环境类...
我该怎么做?谢谢!
使该变量成为具有public static
标识符的类成员。
public static var textFieldObjects:Textfield;
有关什么static
和public
关键字的意思是,你可以参考这个问题的详细信息:从Adobe Actionscript 3: Can someone explain to me the concept of static variables and methods?
哦,这样的静态魔法!我想你只需要公开就可以查看它!非常感谢!!! – Elggetto 2010-12-09 07:39:41
您需要声明变量“公开”:
public var textFieldObjects:TextField;
2.您无法直接通过类访问常规属性 - 您需要environnement
类的实例。如果您使用的是Flash工具,则需要将组件放置在舞台上(这会创建实例),然后为其提供实例ID。然后,您可以使用该ID从您的动作中访问组件。
所以,如果你打电话给你的实例:myEnv,那么你的动作可能是这样的:
myEnv.textFieldObjets.text = "blabla";
如果你在柔性工作,那么它的工作方式相同 - 只需将组件拖到mxml文档,并将它的id
属性设置为唯一的名称。现在,您可以使用您定义的ID从脚本访问该组件。
我不知道它是否是拼写错误,但通常在Flex/AS3编码约定中,类名应以大写字母(Environnement)开头。您可以在这里阅读有关这些编码约定的更多信息:http://opensource.adobe.com/wiki/display/flexsdk/Coding+Conventions#CodingConventions-Classnames – David 2010-12-09 07:46:11
哈哈哈真实!我的坏,而不是一个错字,只是我在训练开始时没有学到的东西。为了将来的编码,我会记住这一点。谢谢! – Elggetto 2010-12-09 08:52:00