我正在尝试在屏幕上绘制一个文本框。如果我将宽度和高度分配给任何值,如下面的代码所示,我看不到任何绘制的内容。为什么是这样?宽度和高度有什么用? Adobe的文档说它是精灵的宽度/高度(以像素为单位)。为什么会阻塞或阻止绘制文本框或其他框?我假设宽度/高度会设置可以绘制此精灵的区域,但基于此,我可能错了。
提前致谢。
-Nick
package
{
import flash.display.Sprite;
import flash.events.Event;
import mx.core.* ;
import mx.collections.* ;
import flash.display.* ;
import flash.text.* ;
[SWF(width=1000,height=500)]
public class BareBones extends Sprite
{
public var backBuffer:BitmapData;
public var clearColor:uint = 0xFF0043AB;
public var display_txt:TextField;
public var i:uint = 0
public function BareBones()
{
addEventListener(Event.ENTER_FRAME, step);
width = 1000;
height = 500;
display_txt = new TextField();
display_txt.text = "Hello World!";
addChild(display_txt);
}
private function step(event:Event) : void
{
i++;
display_txt.text = i.toString();
}
}
import flash.display.Sprite;
import flash.events.Event;
import mx.core.* ;
import mx.collections.* ;
import flash.display.* ;
import flash.text.* ;
[SWF(width=1000,height=500)]
public class BareBones extends Sprite
{
public var backBuffer:BitmapData;
public var clearColor:uint = 0xFF0043AB;
public var display_txt:TextField;
public var i:uint = 0
public function BareBones()
{
addEventListener(Event.ENTER_FRAME, step);
width = 1000;
height = 500;
display_txt = new TextField();
display_txt.text = "Hello World!";
addChild(display_txt);
}
private function step(event:Event) : void
{
i++;
display_txt.text = i.toString();
}
}
答案 0 :(得分:0)
当您在构造函数中设置width
和height
时,实际上会影响scaleX
和scaleY
变量,这反过来会影响根transform.matrix
为了了解如何设置scaleX
,Flash会处理剪辑内的内容。例如,如果您有一个包含100x100框的MovieClip,并且设置了width = 200
,则Flash会计算您的意思是scaleX = 2
。
但是,您要在其中包含 nothing 的剪辑上设置width
和height
。结果是scaleX
和scaleY
都被设置为0。