Приветствую.Есть 2 вопроса: создал галерею картинок (код взят из форума): | Код | import mx.transitions.*; import flash.display.Sprite; import flash.utils.*; _global.tof=true; _global.it = 0; _global.thisX = 30; _global.thisY = 30; var gallery_xml:XML = new XML(); gallery_xml.ignoreWhite = true; gallery_xml.onLoad = function(success:Boolean) { try { if (success) { var images:Array = this.firstChild.childNodes; var gallery_array:Array = new Array(); for (var i = 0; i<images.length; i++) { gallery_array.push({src:images[i].firstChild.nodeValue}); } displayGallery(gallery_array); } else { throw new Error("Unable to parse XML"); } } catch (e_err:Error) { trace(e_err.message); } finally { delete this; } }; gallery_xml.load("gallery_tween.xml");
function displayGallery(gallery_array:Array) { var galleryLength:Number = gallery_array.length; for (var i = 0; i<galleryLength; i++) { var thisMC:MovieClip = this.createEmptyMovieClip("image"+i+"_mc", i); mcLoader_mcl.loadClip(gallery_array[i].src, thisMC); preloaderMC = this.attachMovie("preloader_mc", "preloader"+i+"_mc", 5000+i); preloaderMC.bar_mc._xscale = 0; preloaderMC.progress_txt.text = "0%"; thisMC._x = _global.thisX+200; thisMC._y = _global.thisY-22; preloaderMC._x = _global.thisX; preloaderMC._y = _global.thisY+20; if ((i+1)%1 == 0) { _global.thisX +=185; } else { _global.thisX += 80+20; } } } var mcLoader_mcl:MovieClipLoader = new MovieClipLoader(); var mclListener:MovieClip = new MovieClip(); mclListener.onLoadStart = function() { }; mclListener.onLoadProgress = function(target_mc, loadedBytes, totalBytes) { var pctLoaded:Number = Math.round(loadedBytes/totalBytes*100); var preloaderMC = target_mc._parent["preloader"+target_mc.getDepth()+"_mc"]; preloaderMC.bar_mc._xscale = pctLoaded; preloaderMC.progress_txt.text = pctLoaded+"%"; }; mclListener.onLoadInit = function(evt:MovieClip) { evt._parent["preloader"+evt.getDepth()+"_mc"].removeMovieClip(); var thisWidth:Number = evt._width; var thisHeight:Number = evt._height; var borderWidth:Number = 2; var marginWidth:Number = 8;
function mov(it,min:Number) { if (min==1) { onEnterFrame = function() { for (var i = 0; i<5; i++) evt._parent["image"+i+"_mc"]._x+=it; } } else if (min==0) { onEnterFrame = function() { for (var i = 0; i<5; i++) evt._parent["image"+i+"_mc"]._x-=it; } } } mr.onPress = function() { mr.onRollOut = function() { mov(0,0) } mov(2,1) } ml.onPress = function() { ml.onRollOut = function() { mov(0,0) } mov(2,0) } evt.onPress = function() { var tx:Number; tx=evt._parent["image"+evt.getDepth()+"_mc"]._x; evt._parent["image"+evt.getDepth()+"_mc"]._x = 230; for (var i = 1; i<6; i++) { evt._parent["image"+(evt.getDepth()-i)+"_mc"]._x-=tx-230; } for (var i = 1; i<6; i++) { evt._parent["image"+(evt.getDepth()+i)+"_mc"]._x-=tx-230; } if(tof) { for (var i = 1; i<6; i++) evt._parent["image"+(evt.getDepth()+i)+"_mc"]._x+=270; } else { for (var i = 1; i<6; i++) { evt._parent["image"+(evt.getDepth()+i)+"_mc"]._x-=270; } } tof=!tof; mov(0,0); loadVariables(evt.getDepth()+".txt","_root"); mx.transitions.TransitionManager.start(this, {type:mx.transitions.Photo, direction:0, duration:1, easing:mx.transitions.easing.Strong.easeOut, param1:empty, param2:empty}); }; }; mcLoader_mcl.addListener(mclListener);
|
а вот Xml: | Код | <?xml version="1.0"?> <gallery> <img><![CDATA[1.jpg]]></img> <img><![CDATA[2.jpg]]></img> <img><![CDATA[3.jpg]]></img> <img><![CDATA[4.jpg]]></img> <img><![CDATA[5.jpg]]></img> </gallery>
|
Собственно вопросы: 1.Как все картинки загнать в один MovieClip, который можно крутить по нажатию на кнопки, расположеные по краям формы (вправо-влево) 2.При нажатии на каринку расположеные, скажем, справа от нее должны уезжать, а на их месте возникать спецефический для каждой текст (загрузка с файла?)... Вчера пытался сделать через attachMovie, но что-то у меня ничего не получилось:( Это сообщение отредактировал(а) C4Grey - 14.2.2008, 12:21
|