PDA

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


VladBD
22.10.2006, 15:28
Нужно отображать элементы массива в динамических полях.
В чем проблема?

iNils
22.10.2006, 16:33
this["glNumChar[" + i + "]"] = glS.substring (RandomInt, RandomInt + 1);
Но обращение к текстовому полю по Var давно устарело, сейчас используют Instance name. Да и не нужно пытаться назвать поле с квадратными скобками, можно просто текст+цифра.

wvxvw
22.10.2006, 16:43
var str1:String = unescape("%5B");
var str2:String = unescape("%5D");
for (i=0; i<3; i++) {
RandomInt=Math.floor(Math.random()*32);
glNumChar[i]=glS.substring(RandomInt, RandomInt+1);
this["glNumChar"+str1+i+str2] = glS.substring(RandomInt, RandomInt+1);
}
Млин, зачем так сложно переменные называть?

wvxvw
22.10.2006, 16:45
2 iNils:
this["glNumChar[" + i + "]"] = glS.substring (RandomInt, RandomInt + 1);
У меня почему-то отказался так работать

VladBD
22.10.2006, 16:54
Спасибо. У меня оба варианта работают...
Еще вопрос - если мне надо сделать 20 таких динамических текстов -
как лучше это сделать - наверное не обязательно рисовать 20 динамических полей?
Но в одно пока не помещаю, т.к. потом придется в зависимости от буквы менять цвет.
как оптимально все это сделать - чтоб меньше кода писать.
Просто до этого делал переменными - потом завел массив - дальше есть оптимизация?
Ну и соответственно сразу привыкать делать красиво - чтоб места мало занимал файлик (может виртуально создавать динам. текстовые поля?)

iNils
22.10.2006, 17:08
Лучше одно поле и использовать TextFormat для изменения цвета конкретного символа.