|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Nov 2009
Адрес: в златоглавой
Сообщений: 745
|
GetDefinitionByName создание собственного класса
Имеется несколько переменных с объявленным классом. К ним можно обращаться в цикле через this["someVar" + i].
private var someVar0:CustomClass; private var someVar1:CustomClass; private var someVar2:CustomClass; private var someVar3:CustomClass; public function Asdf() { for (var i:uint = 0; i < 4; i++) { this["someVar" + i] = new CustomClass(); // здесь создаётся без ошибок } } Пробовал разные способы, в том числе писать в цикле: Выдаёт: Error #1065: Переменная someVar0 не определена.
__________________
Нормально делай — нормально будет! |
|
|||||
Ну так в getFefinitionByName требуется строка с полным именем класса, а не "someVar0". Хотя, конечно, если Вы сделаете такой класс, то заработает:
В хелпе написано тоже самое. Вообще зачем Вам это нужно?
__________________
http://www.chessmax.ru Последний раз редактировалось Inet_PC; 19.12.2011 в 23:22. |
|
|||||
[+4 06.05.14]
|
ну такой вариант я вижу тока напрмер для сайта-студии что то типа
__________________
Марк Tween |
|
|||||
Вам не это нужно?
__________________
9 из 10 голосов в моей голове сказали наркотикам "НЕТ" Мои ачивки: художник-паразит. |
|
|||||
Регистрация: Nov 2009
Адрес: в златоглавой
Сообщений: 745
|
Класс подгружается из swc. Имя класса прописываю в самом начале (известная фича при работе с swc).
Добавлено через 19 минут ChuwY Работает, но не так как надо Необходимо, чтобы при этом в переменные ["someVar" + i] сохранялись созданные объекты, а в твоём варианте на выходе == null.
__________________
Нормально делай — нормально будет! |
|
|||||
Объясните как следует, что вам нужно.
var someString:String = "someVar" + i; // здесь вы получаете имя переменной var itemClass:* = getDefinitionByName(someString) as Class; // здесь вы пытаетесь по *имени переменной* получить ссылку на какой-то класс (какой именно вам нужен, мне не понятно) itemClass = new CustomClass(); // а здесь вы пытаетесь в переменную, хранящую ссылку на класс, записать ссылку на новый экземпляр известного вам класса
__________________
9 из 10 голосов в моей голове сказали наркотикам "НЕТ" Мои ачивки: художник-паразит. Последний раз редактировалось ChuwY; 20.12.2011 в 03:25. |
|
|||||
Регистрация: Nov 2009
Адрес: в златоглавой
Сообщений: 745
|
Строка
создаёт в переменной someVar+i объект класса CustomClass с определёнными параметрами, а я хотел избавиться от такой записи, используя getDefinitionByName, дабы повысить читаемость.
__________________
Нормально делай — нормально будет! |
|
|||||
буду краток
модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
|
Забудьте вы про
Если нужно использовать упорядоченные по индексу наборы данных, так для этого есть массивы и векторы
__________________
Отряд Котовскага |
|
|||||
Регистрация: Nov 2009
Адрес: в златоглавой
Сообщений: 745
|
Котяра, спасибо! Так действительно будет проще.
__________________
Нормально делай — нормально будет! |
Часовой пояс GMT +4, время: 13:56. |
|
« Предыдущая тема | Следующая тема » |
|
|