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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 20.08.2010, 20:31
FriOne вне форума Посмотреть профиль Отправить личное сообщение для FriOne Найти все сообщения от FriOne
  № 1  
Ответить с цитированием
FriOne
 
Аватар для FriOne

Регистрация: Jul 2010
Адрес: Бердск, НСК
Сообщений: 171
Записей в блоге: 1
Question Загрузка изображений по нажатию и без

Сделал функцию загрузки строки, которая будет начинаться если кнопка нажата:
Код AS1/AS2:
function load_line(line:MovieClip, line_number:Number, last_pic:Number)
{
	if(flag == false) { break; } // Если нажата другая кнопка - выходим
 
	// Определние места загрузки
	if(line._parent == pictures_interior)
	{
		if(last_pic<area.firstChild.childNodes[0].childNodes[line_number].attributes.count){ break; } // Если катинки закончились - выходим
		if(!line["picture_inter"+line_number+j])
		{
			var picture_inter:MovieClip = line.createEmptyMovieClip("picture_inter"+line_number+j,line.getNextHighestDepth());
			picture_inter._x = 600*last_pic;
			var folder:String = area.firstChild.childNodes[0].childNodes[line_number].attributes.folder;
			load_pic(picture_arc,"images/interior/"+folder+"/"+last_pic+".jpg",last_pic);
		}
		else
		{
			load_line(line,line_number,last_pic++);
		}
	}
	if(line._parent == pictures_architecture)
	{
		if(last_pic<area.firstChild.childNodes[1].childNodes[line_number].attributes.count){ break; } // Если катинки закончились - выходим
		if(!line["picture_arc"+line_number+j])
		{
			var picture_arc:MovieClip = line.createEmptyMovieClip("picture_arc"+line_number+j,line.getNextHighestDepth());
			picture_arc._x = 600*last_pic;
			var folder:String = area.firstChild.childNodes[1].childNodes[line_number].attributes.folder;
			load_pic(picture_arc,"images/architecture/"+folder+"/"+last_pic+".jpg",last_pic);
		}
		else
		{
			load_line(line,line_number,last_pic++);
		}
	}
	// Функция загрузки картинки, где:
	//	line_in - место загрузки
	//	pic_way - путь картинки
	//	last_pic - последняя загруженная картинка, для передачи параметра в главную функцию
	function load_pic(line_in:MovieClip, pic_way:String, last_pic:Number)
	{
		var pic_temp:MovieClip = line_in.createEmptyMovieClip("pic_temp", 0);
		var mcLoader:MovieClipLoader = new MovieClipLoader();
		mcLoader.addListener(mclListener);
		mclListener.onLoadInit = function(pic_temp) 
		{
			var bitmap_temp:BitmapData = new BitmapData(pic_temp._width, pic_temp._height, true, 0);
			bitmap_temp.draw(pic_temp);
			line_in.attachBitmap(bitmap_temp,0,"auto",true);
			pic_temp.removeMovieClip();
			load_line(line_in._parent,last_pic++);
		};
		mcLoader.loadClip(pic_way,pic_temp);
	}
}
Функция выше сделана рекурсивно, по завершению загрузки вызывается снова..

Хотел бы сделать функцию, которая загружает все картинки и при нажатии на кнопку вызывает фунцию описаную выше, но если все картинки загружены в строке, должна возвратиться к загрузке всех картинок и не иначе..

Помогите со структурой, как сделать так, чтобы функция загрузки линии ждала завершения загрузки всей строки и не выходила в фунцию загрузки всех картинок, так как выполнившись она вызывается рекурсивно только при окончании загрузки..

P.S. не знаю хорошо ли пояснил, но очень надо помогите плз


Последний раз редактировалось FriOne; 21.08.2010 в 19:47.
Создать новую тему Ответ Часовой пояс GMT +4, время: 12:21.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
загрузка , остановка
Опции темы
Опции просмотра

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

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


 


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


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