![]() |
|
||||||||||
|
|
|
|||||
|
Регистрация: Oct 2009
Сообщений: 26
|
Очень срочно нужна помощь, во флэш документ нужно загрузить около 400 фотографий...как это можно сделать(обычный импорт примерно после 50 фото виснет)...может есть какойто программный путь? завтра работу сдавать
![]() |
|
|||||
|
Модрон-ветеринар
|
Такое количество фото обычно грузят извне, используя класс MovieClipLoader.
Примеры загрузки в хелпе - см. конструктор MovieClipLoader. Если фото в проекте анимируются (масштаб, полжение), то рекомендую также после загрузки (в теле метода onInit) поставить для целевого мувика-контейнера forceSmoothing = true. |
|
|||||
|
Регистрация: Oct 2009
Сообщений: 26
|
"Следующий код загружает JPEG изображение flowers.jpg в мувиклип image_clip:
image_clip.loadMovie("flowers.jpg")"-а как сделать чтобы на разные кадры загружались фотки? |
|
|||||
|
Модрон-ветеринар
|
На "разные кадры" загрузить не получится никогда и ничего.
Я же вам писал - используйте класс MovieClipLoader. loadMovie - устаревший метод и много с его помощью не получится сделать. Создавайте контейнеры для загрузки с помощью createMovieClip, и грузите в них свои фото, и сразу после загрузки делайте им _visible = false В нужные моменты времени, в нужном кадре придавайте им _visible = true, а другие скрывайте опять через _visible = false. Допустим, код у нас в первом кадре, а задача - загрузить фото и показывать их в соотв. кадрах, начиная со второго. Код 1-го кадра: stop(); var total:Number = 400; var mclListener:Object = new Object(); mclListener.onLoadInit = function(target_mc:MovieClip) {//оптимизируем и делаем невидимыми target_mc.forceSmoothing = true ; //сглаживаем загруженное target_mc._x = ... //тут задаем координаты загруженного контейнера с фото target_mc._y = ... target_mc._visible = false ; //до поры скрываем загруженное count++; trace('загружено фото - ' + count); //для проврки if (count == total) { gotoAndStop(2); //по окончанию загрузки последнего фото переходим во второй кадр } }; var mcLoader:MovieClipLoader = new MovieClipLoader(); mcLoader.addListener(mclListener); //загружаем var count:Number = 0; //нужно для отслеживания процесса загрузки фотографий for (i = 1; i <= total; i++) { //где total - общее количество фото var container:MovieClip = this.createEmptyMovieClip('image_mc' + i, this.getNextHighestDepth()); mcLoader.loadClip('image' + i + '.jpg', container); } Так сделано для простоты понимания вами алгоритма и незнания ваших конкретных обстоятельств, у себя я бы сделал по-другому. Последний раз редактировалось mooncar; 01.11.2009 в 18:43. |
|
|||||
|
Регистрация: Oct 2009
Сообщений: 26
|
блин попроще бы какнибудь,но все равно спасибо...пытаюсь щас через подгрузку swf решить свою проблему и столкнулся с двумя вопросами:
1)swf подгружаются в exe будет ли это все работать на компьютере где нет флэш проигрывателя? 2)фотграфии я разбил на группы-каждая группа отдельный swf...но одна группа слишком большая и все фото опять не импортируются,я решил разбить эту группу на два swf и в последнем кадре загружаю второй swf, но теперь не знаю как сделать чтобы нормально работали кнопки перемотки фотографий...помогите! Последний раз редактировалось VALIK_god; 01.11.2009 в 22:10. |
|
|||||
|
Модрон-ветеринар
|
1) Будет. Поскольку вы пакуете основной ролик в EXE, в EXE уже проигрыватель встроен (отсюда и вес прибавляется).
2) Вопрос-таки вам - зачем вам фото складывать еще и в swf? Вы сами себе усложняете задачу, так как вам все равно нужно использовать MovieClipLoadr, чтобы правильно выполнить загрузку. К тому же, если в загружаемых swf есть интерактивный контент, типа кнопок, добавляются проблемы - для загружаемых swf переназначается _root, нужно либо весь код писать только в основном ролике, либо для загружаемых фиксировать _root через _lockroot. Попробуйте все же по моему алгоритму. |
|
|||||
|
Регистрация: Oct 2009
Сообщений: 26
|
сложно,не могу разобрать...давайте я вам свою задачу по подробнее распишу:
Итак, есть презентация мебели. В этой презентации всякая информация и есть раздел каталог, в этом разделе есть кнопки(подкаталоги,например "мягкая мебель" "мебель для отелей" и т.д.) нажимая на один из подкаталогов в некотором "окне" размера 781.9*394.5 начинают медленно меняться фотографии мебели...главная проблема в том что есть кнопки с помощью которых можно управлять просмотром фотографий:пауза,плей...и кнопки перемотки изза который я сейчас и мучаюсь...так бы просто сделал подгрузку swf одну за другим...помогите пожалуйста осуществить это... |
|
|||||
|
Модрон-ветеринар
|
Жаль, что вы не описали ваш проект сразу. Глядишь, советы были бы поконкретнее. "Перемотка" состоит в переходе на кадр, где находится фотография?
|
|
|||||
|
Регистрация: Oct 2009
Сообщений: 26
|
Цитата:
Добавлено через 6 минут skald, можно по подробней, у меня с работой с внешними файлами во флэш туговато... |
![]() |
![]() |
Часовой пояс GMT +4, время: 19:59. |
|
|
« Предыдущая тема | Следующая тема » |
|
|