|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Sep 2010
Сообщений: 167
|
Не работает вызов функции в мувиклипе
Добрый день!
Столкнулся сегодня с проблемой странного характера... Мой скрипт создаёт мувиклипы динамически с помощью attachMovie. Код следующий: var test_mc:MovieClip = _root.Root.attachMovie("test1",newname,_root.Root.getNextHighestDepth(),{_height:_root.slotH }); test_mc.activameMe(); Но activameMe вызваться и не собирается. При этом, я спокойно вызываю функцию test_mc.onRelease(), и всё работает. Есть предположение, что на инициализацию функций уходит время, и на момент вызова она ещё не активна. Посоветуйте пожалуйста решение. |
|
|||||
Сама по себе задача, конечно же, интересная.
Но так делать не рекомендую. Если у вас 100 клипов, и в каждом свой код, то найти его будет крааайне сложно. Поэтому делаем так: И наслаждаемся жизнью. К слову сказать - при таком подходе вам не придется вкопипащивать в каждый клип один и тот же сходный код. |
|
|||||
Регистрация: Sep 2010
Сообщений: 167
|
Интересный подход. Да, у меня в каждом клипе достаточно много кода. Долго рылся в интернете, и выяснил, что attachMovie в принципе не задействует событий вроде onLoad, так что отследить полную инициализацию сложновато.
Пока пробовал вчера, придумал вот такой способ: в _root: var test_mc:MovieClip = _root.Root.attachMovie("test1",newname,_root.Root.getNextHighestDepth(),{_height:_root.slotH }); В общем, основывался на том, что заранее угадать время инициализации не получится, и поймать событие onLoad тоже не удастся. Но зато событие onEnterFrame всегда срабатывает автоматически, так что я решил вызвать функцию с первым фреймом инициализированного клипа, после чего функция onEnterFrame удаляется. Возможно кому-то пригодится. |
|
|||||
Не. Это костыли. Жуткие. Будет у кого-то работать, у кого-то нет.
У меня не "интересный подход", а единственно верный в данном случае |
|
|||||
Регистрация: Sep 2010
Сообщений: 167
|
А если функция слишком большая по объёму, и её неудобно прописывать в руте каждый раз?
|
|
|||||
Нет. Если она слишком большая - вы что-то либо неправильно делаете, либо неверно себе представляете программные структуры.
Если вы живете в СПб - можно потусить и послушать меня на видео. |
|
|||||
Регистрация: Sep 2010
Сообщений: 167
|
Да нет, не в Питере...
У меня сложный интерфейс RPG инвентаря, кода приходится писать много. |
Часовой пояс GMT +4, время: 23:19. |
|
« Предыдущая тема | Следующая тема » |
|
|