Текстовое поле исчезает при изменении ширины исходного спрайта - PullRequest
2 голосов
/ 05 января 2011

Я пытаюсь нарисовать текстовое поле на экране.Если я назначу ширину и высоту любому значению, как показано в коде ниже, я не вижу ничего нарисованного.Почему это?Какая польза от ширины и высоты?Документы Adobe говорят, что это ширина / высота спрайта в пикселях.Почему это мешает или мешает рисованию текстового поля или другого поля?Я предполагал, что ширина / высота установит область, на которой этот спрайт может быть нарисован, но на основании этого я, вероятно, ошибаюсь.

package {</p> <pre><code>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(); } }

}

1 Ответ

0 голосов
/ 06 января 2011

Когда вы устанавливаете width и height в конструкторе, вы фактически воздействуете на переменные scaleX и scaleY, которые, в свою очередь, влияют на transform.matrix.

пользователя root.знать, как установить scaleX, Flash работает с контентом, который находится внутри клипа.Например, если у вас есть мувиклип с полем 100x100, и вы установите width = 200, Flash рассчитает, что вы имеете в виду scaleX = 2.

Однако вы устанавливаете width и height дляклип с ничего в нем.В результате оба значения scaleX и scaleY устанавливаются на 0.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...