请解释为什么当且仅当未设置宽度和高度时,这将显示标签:
package
{
import flash.display.Sprite;
import flash.text.TextField;
public class Screen extends Sprite
{
public function Screen()
{
super();
// width = 640;
// height = 480;
var lbl:TextField = new TextField();
lbl.textColor = 0xFFFFFF;
lbl.text = "This is a disclaimer.";
addChild(lbl);
}
}
}
答案 0 :(得分:0)
如果我正在读这个,我认为我是正确的,那就是一个基本错误。您没有在范围内(在类或函数内)声明宽度和高度属性。因此,基本上发生的是,由于错误,代码在定义TextField之前就会中止。
您似乎正在尝试设置Sprite的宽度和高度。要做到这一点,行必须是......
this.width = 640;
this.height = 480;
this
是一个特殊关键字,它将AS3直接指向与此直接相关的对象。没有this
,AS3认为你只是在处理一些变量,并且你没有在范围内声明任何这样的变量。