PDA

Просмотр полной версии : текст в массиве из текстовых полей


AlliAS
10.11.2007, 11:32
И снова всем привет.
У меня такая вот проблема:
есть у меня код:
var wArray:Array = new Array("red", "orange", "green", "blue", "white", "black");
for (i=0; i<wArray.length; i++) {
this.createEmptyMovieClip(wArray[i]+'_mc',i);
var nArray:Array = new Array();
nArray.push(wArray[i]+'_mc');
//trace(nArray);
nArray[i].createTextField(wArray[i]+'_txt',this.getNextHighestDepth,100,100,100,50);
//trace(wArray[i]+'_txt');
var tArray:Array = new Array();
tArray.push(wArray[i]+'_txt');
trace(tArray);
red_txt.text = "index"
}
Как видно, здесь создаеться 3 массива: со строками, с мувиклипами и с текстовыми полями, которые должны быть внутри клипов. Все объекты существуют (для этого trace)
Но я почемуто нимогу обратиться ни к мувиклипу, ни к текстовому полю внутри него. Подскажите пожалуйста, что я сделал не так?

iNils
10.11.2007, 11:43
1. В цикле вы каждый раз пересоздаете массивы nArray и tArray
2. В эти массивы вы помещаете не ссылки на объекты, а текстовые значения.
var wArray:Array = new Array ("red", "orange", "green", "blue", "white", "black");
var nArray:Array = new Array ();
var tArray:Array = new Array ();
for (i = 0; i < wArray.length; i++) {
var mc:MovieClip = this.createEmptyMovieClip (wArray[i] + '_mc', i);
mc._y = i * 20;
nArray.push (mc);
var txt:TextField = mc.createTextField (wArray[i] + '_txt', mc.getNextHighestDepth (), 100, 100, 100, 50);
tArray.push (txt);
txt.text = "index" + i;
}

AlliAS
10.11.2007, 13:02
Спасибо огромное!!!