|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Oct 2008
Адрес: Воронеж
Сообщений: 75
|
Привести строку к имени объекта. Возможноли?
Доброго времени суток.
Столкнулся со следующей проблемой: Делаю динамическое попуп окно. Содержимое окна берется из XML файла. Например в нем находятся имена объектов. При создании окна мне нужно по этому имени вызвать соответствующий конструктор объекта. Например public function createContent(name_prod : String, src_prod : Sprite, money_prod : uint, gold_money : uint, loadel : uint) : void { var name_o : w_name_object = new w_name_object(); name_o.setName(name_prod); name_o.x = w_win.x/2-100; name_o.y = w_win.y / 2 - 150 + (60 * loadel); this.addChild(name_o); var obj : Sprite = new src_prod(); //в данной строке ошибка obj.x = name_o.x - 100; obj.y = name_o.y; this.addChild(obj); } Подскажите как правильно сделать? Заранее благодарю за ответ. |
|
|||||
Регистрация: Jan 2008
Сообщений: 669
|
|
|
|||||
Регистрация: Oct 2008
Адрес: Воронеж
Сообщений: 75
|
Спасибо огромное за подсказку.
Но что то я не пойму пишу var obj_name : Class = Class(getDefinitionByName(src_prod)); var obj : Sprite = Sprite(new obj_name()); Если пишу то все работает. Что я не так сотворил? |
|
|||||
Flash Aксакал
Регистрация: Jun 2005
Сообщений: 636
|
Так вроде ж по вашему коду src_prod это ж экземпляр Sprite'а?
Вы хотите чтобы метода создал дупликат спрайта? |
|
|||||
Регистрация: Oct 2008
Адрес: Воронеж
Сообщений: 75
|
Вообщем так ничего у меня и не получилось
public function createContent(name_prod : String, src_prod : String, money_prod : uint, gold_money : uint, loadel : uint) : void { var obj_name : Class = getDefinitionByName(src_prod) as Class; } |
|
|||||
Et cetera
Регистрация: Sep 2002
Сообщений: 30,784
|
Очевидно, класса o_apple нет во флешке.
|
|
|||||
там нужно еще пакет указывать. точно не помню, но просто по названию класса он не найдет
__________________
я могу стать всем, если только захочу |
|
|||||
Регистрация: Oct 2008
Адрес: Воронеж
Сообщений: 75
|
Компонент o_apple лежит в библиотеке и прилинкован к классу o_apple.
import main.o_apple; не помогает, выдает туже ошибку. если просто писать то все работает Ни как не пойму в чем проблема ( |
|
|||||
Et cetera
Регистрация: Sep 2002
Сообщений: 30,784
|
Проблема в том, что в коде класс o_apple никак не фигурирует. Импорта недостаточно, должно быть хоть какое-то использование, можно просто написать где-нибудь в коде название класса (не в строке!), чтобы он попал во флешку.
|
|
|||||
Регистрация: Oct 2008
Адрес: Воронеж
Сообщений: 75
|
Что значит не в строке?
|
Часовой пояс GMT +4, время: 07:53. |
|
« Предыдущая тема | Следующая тема » |
|
|