2014-01-21 5 views
0

Сначала я добавил movieClip в свою библиотеку, затем я щелкнул MC в библиотеке и нажал «Свойства», а затем назвал его «blueBox» и создал ссылку ActionScript с именем класса как «blueBox» и база как «flash.display.MovieClip». Я добавил этот мувиклип на сцену, как так:Actionscript 3 - центрирующий текст внутри динамически созданного MovieClip

var myText:TextField = new TextField(); 
var myFormat:TextFormat = new TextFormat(); 

myFormat.size = 15; 
myFormat.color = 0xFFFFFF; 
myFormat.align = TextFormatAlign.CENTER; 
myText.defaultTextFormat = myFormat; 
myText.wordWrap = true; 

var blueBoxOne:blueBox = new blueBox(); 
blueBoxOne.width = 400; 
blueBoxOne.addChild(myText); 


blueBoxOne.x = 400; 
blueBoxOne.y = 40; 
myText.x = 0; 

addChild(blueBoxOne); 

Теперь, что MYTEXT в й положении относительно? Кажется, что это несколько пикселей справа от середины blueBoxOne. Как сделать центр текста в центре BlueBoxOne MovieClip?

ответ

0

Позиция дочернего экранного объекта всегда относится к его родительскому объекту. Ваш TextField показывает текст по центру, но его ширина слишком мала - для центрирования текста внутри родителя, установите его ширину, равную родителю:

myText.width = blueBoxOne.width; 

Это потому, что вы никогда не установить ширину TextField и по умолчанию ширина (100 пикселей) слишком мала для вашей коробки.

+0

hm, теперь он выглядит как 20px справа после blueBox:/ – user2817200

+0

Как долго вы размещаете текст? Вы никогда не устанавливаете свойство текста в своем вопросе, поэтому мне интересно, как вы его видите. Я быстро проверил ваш код в Flash и (с коротким текстом), текст появляется в центре поля. – xxbbcc

Смежные вопросы