Почему я не могу получить textWidth из моего компонента Text? - PullRequest
0 голосов
/ 26 марта 2010
var txtIt:Text = new Text();
                txtIt.text = full_array[t][0];
                txtIt.width = 700;
                txtIt.buttonMode = true;
                txtIt.mouseChildren = false;
                txtIt.selectable = false;
                txtIt.y = t * 30;

                trace(txtIt.textWidth);

                myCanvas.addChild(txtIt);

Почему я не могу получить textWidth для компонента? Я могу получить его для textFields.

Я использовал код пространства имен, и у меня есть это:

 import mx.core.mx_internal;
use namespace mx_internal;

            var txtIt:Text = new Text();



                txtIt.text = full_array[t][0];
                txtIt.width = 700;
                txtIt.buttonMode = true;
                txtIt.mouseChildren = false;
                txtIt.selectable = false;
                txtIt.y = t * 30;

                var txtfld:TextField = txtIt.getTextField() as TextField;
                trace(txtfld.textWidth);


                myCanvas.addChild(txtIt);

Но я получаю TypeError: Ошибка # 1009: Не удается получить доступ к свойству или методу пустой ссылки на объект.

1 Ответ

1 голос
/ 26 марта 2010

Вам необходимо использовать пространство имен mx_internal, чтобы получить доступ к объекту TextField компонента Text. В вашем коде ActionScript вы должны объявить

import mx.core.mx_internal;
use namespace mx_internal;

, а затем что-то вроде

var myText:Text = new Text();
var txtfld:TextField = myText.getTextField() as TextField;

Все свойства и методы измерения текста доступны через TextField

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