![]() |
Как вызвать метод объекта из другого объекта?
Не получается обратиться к объекту в parent.
Document class Код:
package {Код:
package {Код:
package {что я неправильно делаю? |
Неправильно называете классы. Для начала.
А во-вторых, у DisplayObject нет метода changeParam. Необходимо привести полученный спрайт к aClass, т.е. сделать кастинг. |
__etc, спасибо... Про названия классов я вкурсе. Essential ActionScript 3.0 уже в пути с амазона.
Сам я дизайнер, пытаюсь перейти с AS1 на AS3. До изучения кастинга еще не дошел. Проблема в том, что даже trace(parent.getChildAt(0)); возврашает null |
А потому что на момент вызова конструктора, parent ещё не обозначен.
addChild происходит позже. |
Чтобы было понятней:
ты делаешь: var objB:bClass = new bClass(); <-- вызываеться конструктор bClass(). В этом конструкторе ты делаешь: parent.getChildAt(0).changeParam(myProperty); но parent появляеться только тогда, когда ты делаешь: addChild(objB); |
Тоесть получается что при компиляции swf сперва обрабатываются конструкторы всех классов, а только потом появляется display object. Не подскажите где в хелпе об этом можно подробнее прочитать?
|
Конструктор — это функция. Она выполняется, когда вы пишете new. После её выполнения уже происходит дальнейшее выполнение кода, appendChild и т.д.
|
| Часовой пояс GMT +4, время: 13:14. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.