我尝试在我的应用中放置一个计数器显示器。我使用了一个使用基本字体(_sans)的动态TextField。我没有嵌入任何字体,因为它适用于我以前的测试程序。我插入了代码,该代码将在我生成网格的同一个类中显示计数器。
这是运行前的图像。
这是运行时的图像。顺便说一下,我还添加了另一个带有SUBMIT的MovieClip,也没有显示。
作为后续行动:
我创建了一个类Central
,它构成了网格的实例。
var d:Grid = new Grid();
// After some x and y modifications...
addChild(d);
在我解决TextField显示问题之前,上面的相同代码(为计数器重做了)在Grid
类中。
var gTime:gTimer = new gTimer();
// Again, x and y...
addChild(gTime);
我将上面的代码移到了Central
类,并且它有效。为什么它在Grid
类内部无效?
从Central Class
类移动代码后,这是Grid
的构造函数:
private var d:Grid;
private var gTime:gTimer; //This and below are from Grid class previously.
private var SubmitButton;
public function Central()
{
d = new Grid();
d.x = 47;
d.y = 0;
d.scaleY = -1;
d.y += d.height;
addChild(d);
var submitB:Class; // From here to end, is the moved code.
submitB = Submit;
SubmitButton = new submitB;
SubmitButton.x = 380;
SubmitButton.y = 30;
addChild(SubmitButton);
SubmitButton.addEventListener(MouseEvent.CLICK, d.countHighlight);
// The listener is updated to access d's countHighlight method.
gTime = new gTimer();
gTime.x = 380;
gTime.y = 150;
addChild(gTime);
}
现在这里是Grid
:
public function Grid()
{
// constructor code
IndexArray = new Array; // Logically uses an Array...
Score = new Array;
Score[0] = 0;
Score[1] = 0;
Score[2] = 0;
Highlights = new Array;
for(var ctr:int = 0; ctr < 10; ctr++)
{
IndexArray[ctr] = new Array(); // With a stack in each slot...
}
TestFillUp(); // Filler Method
}
在移动代码之前,上面的场景发生了(没有动态TextFields),但是当我将它移动到Central时,它会出现......