![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Apr 2009
Сообщений: 141
|
создаю мувиклип кодом
var reiks:MovieClip = createEmptyMovieClip('reiks1', getNextHighestDepth()); var mcLoader:MovieClipLoader = new MovieClipLoader(); mcLoader.loadClip('images/r1.jpg','reiks1'); но с картинкой следующий код не работает: var reiks:MovieClip = createEmptyMovieClip('reiks1', getNextHighestDepth()); var mcLoader:MovieClipLoader = new MovieClipLoader(); mcLoader.loadClip('images/r1.jpg','reiks1'); var hitarea:MovieClip = reiks.createEmptyMovieClip('hitarea', getNextHighestDepth()); подскажите плиз, как создать внутренний мувиклип, если во внешний надо загрузить картинку |
|
|||||
|
загрузка изображения происходит позднее, чем создание вложенного клипа, соотвественно все содержимое reiks1 тут же стирается
|
|
|||||
|
Регистрация: Apr 2009
Сообщений: 141
|
Цитата:
Цитата:
Добавлено через 18 минут попробовал явно развести загрузку изображения и создания вложенного мувиклипа код в руте: var reiks:MovieClip = createEmptyMovieClip('reiks1', getNextHighestDepth()); var mcLoader:MovieClipLoader = new MovieClipLoader(); mcLoader.loadClip('images/r1.jpg','reiks1'); не работает, без использования loadClip все работает (смотрю в debugger) не работал до этого со свойством loadClip объекта MovieClipLoader() возможно, его использование исключает методы объекта MovieClip() ![]() |
|
|||||
|
Модрон-ветеринар
|
Если у вас одна строчка идет ниже, чем другая, то это не значит, что она выполнится позже.
Вы о методе onLoadInirt слышали? Похоже, что нет. Прочитайте, иначе смысла использовать MovieClipLoader нет. Как прочитаете, вам все сразу станет ясно. Вам хинт: пропишите создание вложенного контента внутри onLoadInit. |
|
|||||
|
Регистрация: Apr 2009
Сообщений: 141
|
спасибо, прочитаю обязательно
проблема в том что вынести отдельно не уверен что получится, потому как создается в нескольких циклах 40 мувиклипов с разными картинками (и динамическимим именами), и вложенный мувик хотел создавать именно при создании мува, являющегося для него контейнером Добавлено через 4 минуты хотя обязательно попробую ![]() |
|
|||||
|
Модрон-ветеринар
|
Все вышеперечисленное спокойно решается, если грамотно использовать методы MCL и циклы.
Главное для вас сейчас - осознать, для чего придуман тот или иной метод MCL, и особенно - самый важный для вас сейчас onLoadInit. Особое внимание уделите аргументу target:MovieCLip функции, которая на него назначается. Последний раз редактировалось mooncar; 03.12.2009 в 23:41. |
|
|||||
|
Регистрация: Apr 2009
Сообщений: 141
|
работающий код
var reiks:MovieClip = createEmptyMovieClip('reiks1', getNextHighestDepth()); var mcLoader:MovieClipLoader = new MovieClipLoader(); mcLoader.loadClip('images/r1.jpg','reiks1'); var listener:Object = {}; mcLoader.addListener(listener); listener.onLoadInit = function(reiks:MovieClip):Void { reiks.createEmptyMovieClip('hitarea',getNextHighestDepth()); }; |
|
|||||
|
Модрон-ветеринар
|
Ага, только имейте ввиду - у вас аргумент reiks внутри onLoadInit только ссылается на reiks, а не есть сам reiks. То есть вот так тоже будет работать:
listener.onLoadInit = function(mc:MovieClip):Void { mc.createEmptyMovieClip('hitarea', mc.getNextHighestDepth()); }; Добавлено через 3 минуты В качестве объекта слушателя можно использовать сам текущий таймлайн, дабы не засорять ролик: var reiks:MovieClip = createEmptyMovieClip('reiks1', getNextHighestDepth()); var mcLoader:MovieClipLoader = new MovieClipLoader(); mcLoader.loadClip('images/r1.jpg','reiks1'); mcLoader.addListener(this); this.onLoadInit = function(target_mc:MovieClip):Void { target_mc.createEmptyMovieClip('hitarea', target_mc.getNextHighestDepth()); }; Последний раз редактировалось mooncar; 04.12.2009 в 14:58. |
|
|||||
|
Регистрация: Apr 2009
Сообщений: 141
|
спасибо
![]() |
![]() |
![]() |
Часовой пояс GMT +4, время: 10:25. |
|
|
« Предыдущая тема | Следующая тема » |
|
|