Идея с моей настройкой в том, что у меня есть текстовое поле ввода и три отдельные кнопки на сцене. Когда вы вводите текст в текстовое поле и нажимаете кнопку ввода, текст внутри поля добавляется к массиву.Пытается удалить всех детей, получая ошибку # 1009
Когда вы нажимаете кнопку дисплея, содержимое массива отображается на экране (каждое значение массива отображается под последним значением).
Конечная кнопка должна удалить все текущие значения в массиве и очистить все отображаемые значения на экране. Но я не могу получить мой код, чтобы работать, как задумано, так как я получаю,
TypeError: Error #1009: Cannot access a property or method of a null object reference.
С помощью этого блока кода:
import flash.text.TextField;
import flash.events.MouseEvent;
var myArray:Array = new Array ("");
var tf:TF;
btnInput.addEventListener(MouseEvent.CLICK, txtInput);
function txtInput(event:MouseEvent):void
{myArray.push(txtInput.text);}
btnDisplay.addEventListener(MouseEvent.CLICK, txtDisplay);
function txtDisplay(event:MouseEvent):void
{for (var i:int = 0; i < myArray.length; i++)
{var tf:TF = new TF();
tf.txt.text = myArray[i];
tf.y = 280 + (i * 25);
tf.x = 265;
addChild(tf);
tf.name="test";}
}
btnClear.addEventListener (MouseEvent.CLICK, txtClear);
function txtClear(event:Event){
myArray.splice(1);
if (tf.numChildren != 0){
removeChild(getChildByName("test"));}
}
В качестве альтернативы, когда я добавить
var tf:TF = new TF;
It удаляет только одно отображаемое значение на экране. Также я могу добавить, что «TF» - это видеоклип в библиотеке, который содержит динамическое текстовое поле, имя экземпляра которого является txt. Проблема только в последней кнопке, или я должен изменить что-то еще? Я не знаю, как сделать эту работу так, как я ее хочу. Я довольно новичок в кодировании, поэтому любые советы или помощь будут высоко оценены. Заранее спасибо!
У вас есть массив значений, а не массив массивов? Исправьте это как можно скорее, ваш 1009, скорее всего, полностью исчезнет. – Vesper
tf - символ TF фильма. Как поместить их в массив? myArray - для ввода текста. Поэтому у меня есть строка в массиве. Я не понимаю, что вы подразумеваете, добавив TF в массив. – Snickersnee
Добавьте еще один массив, который будет содержать эти TF. Это так же просто, как со строками, 'tfArray.push (tf);' и затем ссылаться на них оттуда, в том числе удалять навалом. – Vesper