PDA

Просмотр полной версии : Динамическое имя экземпляра класса


pazin
12.05.2007, 17:33
Каким должен быть синтаксис создания нескольких экземпляров класса в цикле?

вот цикл:

var slideCount:Number = new Number();

for(slideCount = 0; slideCount<slideLength; slideCount++){

var slide[contentArr[slideCount][0]]:slideZast = new slideZast();}

где slide[contentArr[slideCount][0]] - имя экземпляра класса
contentArr[slideCount][0] - элемент массива, содержащий ID формата (r001)
slideZast - класс, описывающий поведение слайда

etc
12.05.2007, 18:11
Для начала оформите свой код в посте.

pazin
12.05.2007, 18:32
var slideCount:Number = new Number();

for(slideCount = 0; slideCount<slideLength; slideCount++){

var slide[contentArr[slideCount][0]]:slideZast = new slideZast();}


где slide[contentArr[slideCount][0]] - имя экземпляра класса
contentArr[slideCount][0] - элемент массива, содержащий ID формата (r001)
slideZast - класс, описывающий поведение слайда

etc
12.05.2007, 18:38
Нужно нажать кнопку http://flasher.ru/forum/images/russian/style3/buttons/edit.gif и отредактировать первый пост.

Kikasso
12.05.2007, 18:40
а slideLength что такое?

pazin
12.05.2007, 18:43
значение типа Number.

etc
12.05.2007, 18:46
var slideCount:Number = new Number();

for(slideCount = 0; slideCount<slideLength; slideCount++){

slide[contentArr[slideCount][0]]= new slideZast();
}

з.Ы. Имена классов должны начинаться с прописной буквы.

pazin
12.05.2007, 18:57
Даже с прописной не работает. :-(

etc
12.05.2007, 18:59
Это рекомендация на будущее.
Тогда рассказывайте, что есть slide и contentArr.

pazin
12.05.2007, 19:09
slide - префикс имениэкземпляра класса, т.е. при значевнии
contentArr[slideCount][0] = "r001" имя экземпляра должно иметь вид slider001
contentArr - массив, формируемый из XML.
Возможно подскажете как в принципе решается такая задача.
В цикле нужно создать несколько экземпляров класса, с разными именами.

etc
12.05.2007, 19:17
this['slider'+slideCount] = new SlideZast();

pazin
12.05.2007, 19:23
Большое спасибо. Помогло. :-)

Spazm
10.09.2009, 00:45
Тоже возникла такая проблема, спасибо что помогли решить)