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

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

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

Регистрация: Dec 2010
Сообщений: 1
По умолчанию отображение в нужном слое

создаю шапку для сайта
динамично туда загружаются фоновые фотки, слайд-шоу с переходами, нашел в сети простой скрипт:
Код AS3:
import fl.transitions.*;
import fl.transitions.easing.*;
////////////////////////////////////////////////////////////////////////
// Variables Initiation and Declaration
////////////////////////////////////////////////////////////////////////
var pic_prev_mc:MovieClip=new MovieClip();
var pic_mc:MovieClip=new MovieClip();
var picInitial_mc:MovieClip=new MovieClip();
var xmlLoader:URLLoader = new URLLoader();
var xmlData:XML;
var thumbLoader:Loader;
var index:int=0;
var picArray:Array=new Array();
var timer:Timer=new Timer(1000,4);
var curr:int=1;
var totalPictures:int;
var flag:int=0;
var bitmap:DisplayObject;
var effect:Object=Photo;
////////////////////////////////////////////////////////////////////////
// Function XMl Loading
////////////////////////////////////////////////////////////////////////
xmlLoader.addEventListener(Event.COMPLETE, LoadXML);
var httpHeader:URLRequestHeader=new URLRequestHeader("pragma","no-cache");
var path:String="Hpics.xml";
xmlLoader.load(new URLRequest(path));
 
function LoadXML(e:Event):void {
	xmlData=new XML(e.target.data);
	stage.scaleMode=StageScaleMode.EXACT_FIT;
	//stage.align = StageAlign.RIGHT;
	stage.stageWidth=xmlData.Width;
	stage.stageHeight=xmlData.Height;
	getValues(xmlData);
 
}// end of Load XML
xmlLoader.addEventListener(IOErrorEvent.IO_ERROR,funcError);
function funcError(event:IOErrorEvent) {
	trace("Error occured in XML Loading");
}
function getValues(input:XML) {
	var xmlCategoryList:XMLList=input.children();
	totalPictures=input.children().length();
	var item:XML;
	for each (item in xmlCategoryList) {
 
		loadThumbs();
	}
}
////////////////////////////////////////////////////////////////////////
// Function  loadThumbs
////////////////////////////////////////////////////////////////////////
function loadThumbs():void {
	thumbLoader = new Loader();
	thumbLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, loadThumbProgress);
	thumbLoader.contentLoaderInfo.addEventListener(Event.INIT, thumbLoaded);
	thumbLoader.load(new URLRequest(String(xmlData.path[index])));//access the thumbnails
 
 
	function loadThumbProgress(e:ProgressEvent):void {
	}
	////////////////////////////////////////////////////////////////////////
	// Function  thumbloaded
	////////////////////////////////////////////////////////////////////////
	function thumbLoaded(e:Event):void {
		for(var i:int=0;i<totalPictures;i++){;
		picArray[i]=xmlData.path[i];
 
	}
	addChildAt(picInitial_mc,1);//было addChild(picInitial_mc);
	picInitial_mc.addChild(thumbLoader.content);
	//picInitial_mc.x=483.25; // Сдвиг
	bitmap=thumbLoader.content;
}
function xmlLoadFail(event:IOErrorEvent):void {
	trace("error loading the XML");
}
}
////////////////////////////////////////////////////////////////////////
// Function  Next Pic  Loading
////////////////////////////////////////////////////////////////////////
function nextPicLoad(string:String) {
thumbLoader = new Loader();
thumbLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, loadThumbProgress);
thumbLoader.contentLoaderInfo.addEventListener(Event.INIT, thumbLoaded);
thumbLoader.load(new URLRequest(String(string)));
 
function thumbLoaded(e:Event):void {
 
	stage.addChild(thumbLoader.content);
	addChild(pic_mc);
	addChild(thumbLoader.content);
	pic_mc.addChild(thumbLoader.content);
	bitmap=thumbLoader.content;
	//Blinds, Fade, Iris, Photo, PixelDissolve, Rotate, Squeeze, Wipe, or Zoom.
	TransitionManager.start(pic_mc, {type:Fade, direction:Transition.IN, duration:1, easing:Regular.easeInOut});
	TransitionManager.start(pic_mc, {type:Wipe, direction:Transition.IN, duration:1, easing:Regular.easeIn});
 
 
 
}
function loadThumbProgress(e:ProgressEvent):void {
}
 
}
 
////////////////////////////////////////////////////////////////////////
// Function  Pic Display
////////////////////////////////////////////////////////////////////////
 
function picDisplay() {
timer.start();
timer.addEventListener(TimerEvent.TIMER_COMPLETE,funcTimer);
 
function funcTimer(event:TimerEvent) {
	for(var k:int=0;k<pic_mc.numChildren;k++){;
	pic_mc.removeChildAt(k);
 
}
if (flag==0) {
	flag=1;
	removeChild(picInitial_mc);
} else {
	removeChild(pic_mc);
}
addChild(bitmap);
 
nextPicLoad(picArray[curr]);
curr++;
 
if (curr==totalPictures) {
	curr=0;
}
 
timer.reset();
timer.start();
}
}
 
picDisplay();
stop();
поменял addChild(picInitial_mc); на addChildAt(picInitial_mc,1);
первая картинка появляется где надо, а вот все следующие всегда на самом верхнем слое((
пытался разобраться, менял по аналогии AddChild на AddChildAt, но знаний и опыта нее хватило.
подскажите как уладить вопрос с выводом в нужном слое

Добавлено через 7 часов 1 минуту
ну если не хочет никто с кодом разбираться, чирканите хоть мысли по вопросу!

Добавлено через 8 часов 45 минут
всем спасибо за подсказки и ответы, нашел решение вот здесь:
http://www.republicofcode.com/tutori.../as3slideshow/


Последний раз редактировалось BJIag0; 17.12.2010 в 10:09.
Создать новую тему Ответ Часовой пояс GMT +4, время: 19:48.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
addChild , слои
Опции темы
Опции просмотра

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

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


 


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


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