我需要填充位于tField
内的文本字段ParentClass
(在舞台上定义)(具有相同类名的MovieClip)。我希望能够tField.text
将AnotherClass
设置为我想要的{{1}}。我该怎么做?
答案 0 :(得分:0)
更改完整说明的答案,因为提问者可能错过了通过Flash GUI的关键步骤。
将以下内容粘贴到新的AS文件中:
包 {
import flash.display.MovieClip;
import flash.events.FullScreenEvent;
import flash.events.MouseEvent;
import flash.events.Event;
public class Main extends MovieClip
{
public function Main()
{
var another:Another = new Another(this.tField);
}
}
}
文件,另存为,“Main.as”没有引号,与第3步相同的目录。
将以下代码粘贴到新的.as文件中(我无法让StackOverflow正确显示。只需按原样粘贴):
包 { import flash.text.TextField; 公共课另一个 { public function Another(textField:TextField) { textField.text =“你好”; } } }
文件,另存为,“Another.as”没有引号,在同一目录中作为第3步。
所有在舞台上绘制TextField并设置其实例名称都是秘密添加代码行:
public var tField:TextField = new TextField();
tField.type = "input";
对于舞台所关联的任何类(在本例中为Main类)。如果您需要更多帮助,我建议您阅读一本关于AS3编程和Flash IDE的好书,因为答案远远超出了一个简单的StackOverflow答案的范围。
答案 1 :(得分:0)
使用getChildByName。首先,在类中创建TextField
。
import flash.display.TextField;
var tField:TextField = new TextField();
tField.name = "tField";
stage.addChild(tField);
请注意,您需要设置名称。在另一个课程中,您可以使用:
var tField:TextField = stage.getChildByName("tField");
trace(tField.name); // tField