Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 08.12.2008, 16:51
Kurt-sm вне форума Посмотреть профиль Отправить личное сообщение для Kurt-sm Найти все сообщения от Kurt-sm
  № 1  
Ответить с цитированием
Kurt-sm

Регистрация: Jul 2005
Сообщений: 93
По умолчанию загрузка JPG

Друзья, пользовался поиском, много нашёл, но нормально разобраться так и не смог.
Что я имею:
25 клипов с именами типа mc1, mc2 и т.п.
Но внутри этих клипов есть поле (как я понимаю оно удаляется когда картинка загружается)
Так вот вопрос, как же правильно загружать джипеги в эти 25 клипов?

Я использую цикл и строчки
nn = "_parent._parent.rels.pp.im"+i;
Код AS1/AS2:
loadMovie("concept/gallery/small/"+i+".jpg", nn);
но как правильно использовать .onLoadInit я так и не смог понять.
Объясните пожалуйста.

Старый 08.12.2008, 17:03
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
onLoadInit это событие класса MovieClipLoader (см хелп), а loadMovie это метод класса MovieClip или глобальная функция (как в вашем коде) и морально устарел.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 09.12.2008, 16:05
Kurt-sm вне форума Посмотреть профиль Отправить личное сообщение для Kurt-sm Найти все сообщения от Kurt-sm
  № 3  
Ответить с цитированием
Kurt-sm

Регистрация: Jul 2005
Сообщений: 93
А как правильно в таком случае создать Listener? Напомню что клипы создаются методом duplicateMovieClip. Совсем запутался.

Код AS1/AS2:
for (i=1; i<=25; i++) {
	nn = "_parent.rels.pp.im"+i;
	eval(nn).loadMovie("concept/gallery/small/"+i+".jpg");
	eval(nn).addListener(mclListener);
	eval(nn).mclListener.onLoadComplete = function(target_mc:MovieClip) {
	k +=1;
  	tt.text = k;
	}
}
Помогите пожалуйста.

Старый 09.12.2008, 16:15
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 4  
Ответить с цитированием
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
Код:
var container:MovieClip = createEmptyMovieClip("container", getNextHighestDepth());
var mcLoader:MovieClipLoader = new MovieClipLoader();
mcLoader.addListener(this);
mcLoader.loadClip("concept/gallery/small/1.jpg", container);
function onLoadComplete (mc:MovieClip) {
	trace("Loaded");
}
пробуем загрузить один рисунок

Старый 09.12.2008, 16:21
faust.d503 вне форума Посмотреть профиль Отправить личное сообщение для faust.d503 Найти все сообщения от faust.d503
  № 5  
Ответить с цитированием
faust.d503
 
Аватар для faust.d503

Регистрация: Nov 2008
Адрес: Москва
Сообщений: 52
Kurt-sm
Вам же написали решение, а вы пытаетесь сделать что-то вообще непонятное.

Код AS1/AS2:
var mcLoader:MovieClipLoader = new MovieClipLoader();
var listener:Object = {}
mcLoader.addListener(listener);
 
listener.onLoadComplete = function (mc:MovieClip) {
	trace("Loaded " + mc);
}
for (i = 1; i <= 25; i++) {
	mcLoader.loadClip("concept/gallery/small/"+i+".jpg", _parent.rels.pp["im"+i]);
}


Последний раз редактировалось faust.d503; 09.12.2008 в 17:09.
Старый 09.12.2008, 16:44
Kurt-sm вне форума Посмотреть профиль Отправить личное сообщение для Kurt-sm Найти все сообщения от Kurt-sm
  № 6  
Ответить с цитированием
Kurt-sm

Регистрация: Jul 2005
Сообщений: 93
Код который я написал в принципе грузил картинки но onLoadComplete не работал, я так понимаю потому что я что-то путаю с синтаксисом.
faust.d503, чертовски жаль , но этот код не грузит картинки, даже когда я исправил эту строчку:
listener.onLoadComplete = function (mc:MovieClip){
Хотя логикой почему не работает понять не могу. Поковырялся, но решить не смог пока что.

alexcon314, дело не в том что картинки не грузились, дело в Листенере.
И ещё всё осложняется тем, что путь до клипов надо писать, самих клипов много и они созданы путём дублирования родителя.

Старый 09.12.2008, 16:54
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 7  
Ответить с цитированием
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
Я вам предложил разобраться с классом MovieClipLoader. То, что картинки грузятся, это, конечно, хорошо. ))
Надо как-нибудь так:
Код:
var mcLoader:MovieClipLoader = new MovieClipLoader();
mcLoader.addListener(this);
function onLoadComplete(mc:MovieClip) {
	mc._x = i * 50;// производим действия с только что загруженной картинкой
	i++;
	if (i < 25) {
		mcLoader.loadClip(i + ".jpg", createEmptyMovieClip("container" + i, getNextHighestDepth()));
	}
}
var i = 0;
mcLoader.loadClip(i + ".jpg", createEmptyMovieClip("container" + i, getNextHighestDepth()));
Цитата:
И ещё всё осложняется тем, что путь до клипов надо писать, самих клипов много и они созданы путём дублирования родителя.
Не понял.

Старый 09.12.2008, 17:09
Kurt-sm вне форума Посмотреть профиль Отправить личное сообщение для Kurt-sm Найти все сообщения от Kurt-sm
  № 8  
Ответить с цитированием
Kurt-sm

Регистрация: Jul 2005
Сообщений: 93
У меня есть 25 клипов, которые создаются ранее в цикле методом duplicateMovieClip
эти клипы находятся не там, где я хочу написать скрипт загрузки картинок и путь к ним можно прописать так:
_parent.rels.pp
а сами клипы имеют имена im1, im2, im3 и т.д.
т.е. адреса клипов куда я хочу загрузить :
_parent.rels.pp.im1
_parent.rels.pp.im2
и т.д.

Старый 09.12.2008, 17:20
faust.d503 вне форума Посмотреть профиль Отправить личное сообщение для faust.d503 Найти все сообщения от faust.d503
  № 9  
Ответить с цитированием
faust.d503
 
Аватар для faust.d503

Регистрация: Nov 2008
Адрес: Москва
Сообщений: 52
Проверил, всё работает.
Возможно при загрузке непосредственно в дубликат какие-то глюки возникают.
При создании дубликатов их надо в массив пихать.

Код AS1/AS2:
var mcArr:Array = [];
for (var i:Number = 0; i < 26; i++){
	var dupl:MovieClip = movieForDuplicate.duplicateMovieClip("dupl" + i, this.getNextHighestDepth());
	var duplLoader = dupl.createEmptyMovieClip("duplLoader", dupl.getNextHighestDepth());
	mcArr.push(duplLoader);
}
var mcLoader:MovieClipLoader = new MovieClipLoader();
var listener:Object = {}
mcLoader.addListener(listener);
 
listener.onLoadComplete = function (mc:MovieClip) {
	trace("loaded " + mc);
}
listener.onLoadError = function (mc:MovieClip) {
	trace("error " + mc);
}
 
for (i = 1; i <= mcArr.length; i++) {
	mcLoader.loadClip("concept/gallery/small/"+i+".jpg", mcArr[i]);
}

Старый 09.12.2008, 17:25
alexcon314 вне форума Посмотреть профиль Отправить личное сообщение для alexcon314 Найти все сообщения от alexcon314
  № 10  
Ответить с цитированием
alexcon314
listener

модератор форума
Регистрация: Jun 2006
Сообщений: 3,260
Записей в блоге: 28
Отправить сообщение для alexcon314 с помощью ICQ
И что?
Передавайте в loadClip() вторым параметром ссылку на очередной дубликат.
Вообще, нет смысла перед загрузкой создавать контейнер методом duplicateMovieClip. Содержимое контейнера все равно будет удалено. Потому и используют createEmptyMovieClip.

Создать новую тему Ответ Часовой пояс GMT +4, время: 04:54.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 04:54.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.