![]() |
|
||||||||||
|
|||||
|
Регистрация: Sep 2005
Сообщений: 12
|
На досуге начал изучать AS3, и сразу же столкнулся с простейшей проблемой.
Суть вот в чем: в AS2 я аттачил множество похожих мувиклипов на сцену, динамически создавая им имя, вот так: for (i=0; i<5; i++) {
mcName = "newMc"+i;
this.attachMovie("sampleMc",mcName,this.getNextHighestDepth());
this[mcName].sampleVar = 123;
}
for (i=0; i<5; i++) {
var mcName:String = "newMc"+i;
var this[mcName] = new sampleMc();
addChild(this[mcName]);
this[mcName].sampleVar = 123;
}
Что я делаю не так, и как правильно задавать имена и в последствии обращаться к динамически создаваемым объектам и переменным? Заранее всем спасибо за помощь |
|
|||||
|
Регистрация: Jun 2007
Сообщений: 374
|
Почему это ничего не пашет. У меня все пашет:
|
|
|||||
|
ты уверен что в линкейджах все верно указал?
да и никто так не делает. в ас3 название присваиваются автомтом. делать надо вот так |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Почему-то никто не делает ссылку на клип, предпочитая заставлять машину дергать эту ссылку по индексу из массива при любом чихе.
|
|
|||||
|
предлагаешь сделать так?
я правильно тебя понял? Последний раз редактировалось ramshteks; 03.09.2008 в 12:44. |
|
|||||
|
Регистрация: Sep 2005
Сообщений: 12
|
Да, действительно, такой код заработал:
var myTestArray:Array = new Array();
for (var i:Number =0; i<5; i++) {
myTestArray[i]=new testMovie();
addChild(myTestArray[i]);
myTestArray[i].x=10*i;
}
По-моему, ситуация встречается довольно часто, её бы в FAQ закинуть |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
|
|
|||||
|
Регистрация: Sep 2005
Сообщений: 12
|
Спасибо за помощь, все отлично понял. Просто посты написали почти одновременно. =)
|
![]() |
![]() |
Часовой пояс GMT +4, время: 03:28. |
|
|
« Предыдущая тема | Следующая тема » |
|
|