Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
| Дож |
12.5.2008, 12:56
Сообщение
#1
|
|
Поселенец ![]() ![]() Группа: Пользователи Сообщений: 126 Регистрация: 16.4.2008 Пользователь №: 13 423 Репутация: 0 |
Здравствуйте!
Скажите пожалуйста возможно ли масштабировать подгруженную с помощью loadMovie картинку , не прибегая к изменению исходной фото? Если возможно - то как? Если я назначаю клипу в который грузится фото выоту и ширину, то фото перестаёь в него грузиться вообще. Вот так не получается: Код this.createEmptyMovieClip("b_mc", 1); this.createEmptyMovieClip("dm_mc", 5); b_mc._x=50; b_mc._y=50; dm_mc._x=50; dm_mc._y=350; dm_mc._width=300; dm_mc._height=400; b_mc.loadMovie("rtu/bcg1.jpg"); this.attachMovie("t1_mc", "t1_mc",2); t1_mc._x=282; t1_mc._y=72; this.attachMovie("is_mc", "is_mc",4); is_mc._x=300; is_mc._y=72; is_mc._alpha=35; is_mc.onRollOver=function() { is_mc._alpha=10; dm_mc.loadMovie("i/i1/sa06.jpg"); } is_mc.onRollOut=function() { is_mc._alpha=35; dm_mc.unloadMovie() } |
| nikitar |
12.5.2008, 15:31
Сообщение
#2
|
![]() Мишка-Админ ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Главные администраторы Сообщений: 8 616 Регистрация: 7.1.2006 Из: Санкт-Петербург Пользователь №: 12 Репутация: 148 |
Всё маштабирование нужно делать после того, как загрузится картинка
-------------------- Flash. Обучение. Портфолио - обновление 24 мая 2008 | Поговори... со мной!
Как сделать баннер, фотогалерею, слайд-шоу, mp3-плеер, видео-плеер, презентацию, flash-сайт с помощью flash? |
| Дож |
12.5.2008, 15:35
Сообщение
#3
|
|
Поселенец ![]() ![]() Группа: Пользователи Сообщений: 126 Регистрация: 16.4.2008 Пользователь №: 13 423 Репутация: 0 |
Всё маштабирование нужно делать после того, как загрузится картинка Код this.createEmptyMovieClip("b_mc", 1); this.createEmptyMovieClip("dm_mc", 5); b_mc._x=50; b_mc._y=50; dm_mc._x=50; dm_mc._y=350; b_mc.loadMovie("rtu/bcg1.jpg"); this.attachMovie("t1_mc", "t1_mc",2); t1_mc._x=282; t1_mc._y=72; this.attachMovie("is_mc", "is_mc",4); is_mc._x=300; is_mc._y=72; is_mc._alpha=35; is_mc.onRollOver=function() { is_mc._alpha=10; dm_mc.loadMovie("i/i1/sa06.jpg"); dm_mc._width=300; dm_mc._height=400; } is_mc.onRollOut=function() { is_mc._alpha=35; dm_mc.unloadMovie() } Так тоже не грзится |
| nikitar |
12.5.2008, 16:39
Сообщение
#4
|
![]() Мишка-Админ ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Главные администраторы Сообщений: 8 616 Регистрация: 7.1.2006 Из: Санкт-Петербург Пользователь №: 12 Репутация: 148 |
Прикрепи исходник, мне так легче его будет изменить ))
-------------------- Flash. Обучение. Портфолио - обновление 24 мая 2008 | Поговори... со мной!
Как сделать баннер, фотогалерею, слайд-шоу, mp3-плеер, видео-плеер, презентацию, flash-сайт с помощью flash? |
| Дож |
12.5.2008, 17:14
Сообщение
#5
|
|
Поселенец ![]() ![]() Группа: Пользователи Сообщений: 126 Регистрация: 16.4.2008 Пользователь №: 13 423 Репутация: 0 |
Прикрепи исходник, мне так легче его будет изменить )) Вот упростил до невозможности Прикрепленные файлы
test.rar ( 4.23 мегабайт )
Кол-во скачиваний: 18 |
| nikitar |
12.5.2008, 17:32
Сообщение
#6
|
![]() Мишка-Админ ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Главные администраторы Сообщений: 8 616 Регистрация: 7.1.2006 Из: Санкт-Петербург Пользователь №: 12 Репутация: 148 |
Вот тут
Код dm_mc.loadMovie("i/i1/sa06.jpg"); dm_mc._width=300; dm_mc._height=400; Между первой и второй строчкой должна стоять проверка. Мгновенно картинки не загружаются. То есть я бы сюда поставил проверку типа onEnterFrame и проверяем getBytesLoaded картинки и getBytesTotal. Если равно, тогда уже (И ТОЛЬКО ТОГДА) мы меняем ширину и высоту мувиклипа. Лучше код написать тебе самому по этому алгоритму. Пользы будет больше полюбому. -------------------- Flash. Обучение. Портфолио - обновление 24 мая 2008 | Поговори... со мной!
Как сделать баннер, фотогалерею, слайд-шоу, mp3-плеер, видео-плеер, презентацию, flash-сайт с помощью flash? |
| Дож |
12.5.2008, 17:43
Сообщение
#7
|
|
Поселенец ![]() ![]() Группа: Пользователи Сообщений: 126 Регистрация: 16.4.2008 Пользователь №: 13 423 Репутация: 0 |
Между первой и второй строчкой должна стоять проверка. Мгновенно картинки не загружаются. То есть я бы сюда поставил проверку типа onEnterFrame и проверяем getBytesLoaded картинки и getBytesTotal. Если равно, тогда уже (И ТОЛЬКО ТОГДА) мы меняем ширину и высоту мувиклипа. это и нужно было (понять где ошибка)! Спасибо!!! С onEnterFrame знаю как, а вот не существует ли для этого случая что то типа onLoad?... |
| Дож |
13.5.2008, 9:34
Сообщение
#8
|
|
Поселенец ![]() ![]() Группа: Пользователи Сообщений: 126 Регистрация: 16.4.2008 Пользователь №: 13 423 Репутация: 0 |
Действительно с масштабирование , по твоей схеме получилось. Однако новый тупик, (что-то подскавыет не открывать новую тему) такой код и при такой задаче (при наведении на какой либо клип - загрузка рисунка, а при onRollOut выгрузка) работает не выполняя этой задачи:
при наведении появляется и масштабируется рисунок, а когда покидает мышка клип рисунок изчезает - всё нормально., но при наведении вновь на этот клип рисунок не загружается. И скорее всего потому, что теперь этот клип-контейнер имеет уже конкретную ширину и выосту(так я думаю), Я пытался по onRollOut удалять этот клип вообще и тутже создавать по новой, но это не помогает Код this.createEmptyMovieClip("dm_mc", 5); dm_mc._x = 50; dm_mc._y = 350; b_mc.loadMovie("rtu/bcg1.jpg"); this.attachMovie("t1_mc", "t1_mc", 2); t1_mc._x = 282; t1_mc._y = 72; this.attachMovie("is_mc", "is_mc", 4); is_mc._x = 320; is_mc._y = 72; is_mc._alpha = 35; is_mc.onRollOver = function() { is_mc._alpha = 10; dm_mc.loadMovie("sa01.jpg"); this.onEnterFrame=function() { filesize = dm_mc.getBytesTotal(); loaded = dm_mc.getBytesLoaded(); if(filesize==loaded) { dm_mc._width=180; dm_mc._height=270; delete onEnterFrame; } } }; is_mc.onRollOut = function() { is_mc._alpha = 35; dm_mc.unloadMovie(); }; Может в таких случаях есть какое то решение или изменения исходной картинки не избежать(чего не желательно)? |
![]() ![]() |
|
Текстовая версия | Сейчас: 5.7.2008, 0:10 |
|