![]() |
Доступ к свойствам загруженной SWFки
Приветствую!
Решаю такую задачку: Необходимо загрузить SWFку, содержащую векторное изображение, а затем по запросу отобразить это изображение, динамически меняя его высоту. 1. Использую MovieClipLoader для загрузки. Создаю пустой клип и в него гружу. 2. На этапе загрузки без проблем изменяю ширину через обращение к target_mc в .onLoadInit. 3. Потом ложу на нижний, невидимый слой и по необходимости перевожу на верхний видимый. 4. ... а вот тут и возникает проблема. Не удается изменит параметр _height т.к. я обращаюсь через "пустой" клип в который загружена SWFка, а у него выста 0. Т.е. видимо надо как-то добратся до свойств самой картинки... пробовал ссылатся на нее всеми способами, игрался с _lockroot, но все безрезультатно:( Подскажите, как грамотнее решить эту задачку :rolleyes: |
Изменять размеры мувиклипа через _width и _height нельзя. Можно только масштабировать мувик при помощи _xscale и _yscale. Они задаются в процентах, где 100% - оригинальный размер.
Например, если тебе нужно скажем увеличить высоту на 20 пикселей то можно написать так: Код:
my_mc._yscale = (my_mc._width + 20) * 100 / my_mc._width; |
Цитата:
|
_height & _width тоже прекрасно можно ипользовать дял измениения размеров клипа. Просто надо было обращаться к новому загруженному клипу по имени старого клипа. т.е. какже как и в случае
Код:
my_mc._yscaleКод:
my_mc._height = ... |
to meiciuc
мда... действительно то же можно и через _height и _width... только почему у меня это раньше не работало - понять не могу :confused: |
не работало только потому, что была неверная адресация. Уверен, помог пример breez38.
|
Цитата:
my_mc._height = 400; trace(my_mc._height); Выдаст 0; а когда делал my_mc._yscale = 400 то все замечательно растянулось в 4 раза. |
Код:
my_mc._height = 400; |
кстати, использование события onLoadComplete - к сожалению, не панацея. Попробуй проанализировать trace из хелпового примера по этому событию. Если ты грузишь клип с локальной машины, то получишь
Код:
>> loadListener.onLoadComplete()Код:
>> loadListener.onLoadComplete() |
Чилавеки. onLoadInit происходит как правило до onLoadComplete. а высоту менять у того что ещё не загрузилось бессмысленно...
|
| Часовой пояс GMT +4, время: 16:03. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.