![]() |
Как приаатачить клип в клип после загрузки в него jpg?
Привет!
В мувик на сцене загрузил MovieClipLoader-ом картинку (jpg). Возникла необходимисть приаттачить в этот клип другой клип из библиотеки. И не получается. Код:
var mclListener:Object = new Object();Подскажите, где грабли. Спасибо. |
Грабли в том, что этого сделать просто нельзя. После загрузки в клип объекта, сам клип подменяется этим объектом. Если бы грузили не картинку, а swf, то аттач бы произошел не в image_mc, а в рут самого swf. А так как грузим картинку, то аттачить просто некуда.
Поэтому есть два выхода, либо создавать отдельный контейнер для картинки, либо грузить картинку, снимать с нее битмапДату, выгружать картинку и аттачить битмап и символ из библиотеки. |
грабли в том, что приаттачить к загруженному можно только из его же библиотеки
(с swf будет та же история) если грузить в контейнер, созданный для картинки, то сам image_mc будет 'своим' и все получится image_mcl.loadClip("1.jpg", image_mc.createEmptyMovieClip("body", 0)); |
Спасибо, iNils.
Я в принципе так и делал. В контейнере паралельном клипу для картинки грузились 4 клипа-маркера. Ими я масштабировал кртинку. добрый кусок кода отвечал за совмещения двух клипов: картинки и контейнера с маркирами. Когда возникла необходимость группировки нескольких клипов (задача гоуппировки решена), захотелось помечать клипы в группе. Снова использовать контейнер с маркирами не хотелось из-за кода. Там, где в гуппу входили клипы и програмная графика все тип-топ, а с jpg - облом. Это на стадии разработки надо было предусмотреть. А сейчас надо перелапатить около 2000 строк для добавления еще одного контейнера. Что самое обидное - к клипу с загруженной джепежкой обращаешься как к клипу, а он уже и не клип... Добавлено: Ой, уважаемый гуру silin что-то дабавил. Спасибо, сейчас буду пробовать. |
>>обращаешься как к клипу, а он уже и не клип...
не, он клип, у него все(свойства/методы) есть, кроме доступа к библиотеке основного |
Цитата:
|
есть хаковый выход:
аттачить от имени родителя, но в себя же target_mc._parent[target_mc].attachMovie("gmarcer", "gmarcer", 1000); UPD: не работает так, сори |
Цитата:
|
сори, не выход это никакой - померещилось..
спасибо, chingachgoog |
Как минимум, писать надо так
Код:
target_mc._parent["target_mc"] |
| Часовой пояс GMT +4, время: 17:41. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.