Image Gallery Issue in As3

Hi,
     I am trying to implement a simple image gallery with alpha transition using as3.  But an issue is occuring with this. After each image alpha transition, the stage becomes blank. The code i have used for image Gallery is following.CAn anybody help me. I am trying this for a week. but still i have a hope for make this working. So please help me.
import flash.display.Loader;
import flash.display.*;
import gs.TweenLite;
const TIMER_DELAY = 2000;
var totImages:Number;
var index:Number = 0;
var imgArr:Array = new Array();
var currentContainer:MovieClip = holder0;
currentContainer.alpha = 0;
var transTimer:Timer = new Timer(TIMER_DELAY);
//transTimer.addEventListener(TimerEvent.TIMER, startTransition);
var imgLoader:Loader = new Loader();
var myXML:XML = new XML();
var XML_URL:String = "images.xml";
var myXMLURL:URLRequest = new URLRequest(XML_URL);
var myLoader:URLLoader = new URLLoader(myXMLURL);
myLoader.addEventListener("complete", xmlLoaded);
function xmlLoaded(event:Event):void{
    myXML = XML(myLoader.data);
    processXML(myXML);
function processXML(xml){   
    totImages = xml.children().length();
    for(var i=0;i<totImages;i++){
        var tempVar = xml..item[i]..image;
        imgArr.push(tempVar);
    //transTimer.start();
    currentContainer = holder0;
    loadImage();
function loadImage(){
    var url = imgArr[index];
    //ImgLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, onProgressStatus);
    imgLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, fadeInImg);   
    var fileRequest:URLRequest = new URLRequest(url);
    imgLoader.load(fileRequest);
    currentContainer.addChild(imgLoader);
function fadeInImg(e:Event){
    TweenLite.to(currentContainer,3,{alpha:1,delay:2,onComplete:switchClip});
function switchClip(){
    if(index < totImages){
        index++;
    } else {
        index = 0;
    if(currentContainer == holder0){
        currentContainer = holder1;
    } else {
        currentContainer = holder0;
    currentContainer.alpha = 0;
    MovieClip(this.root).swapChildren(holder0, holder1);   
    loadImage();
Thanks and Regards,
                     Sreelash

Hi Adrei, I have implemented the thumbnail button also. Its working but the problem is that thumbnail buttons and controls are placing behind the image container. How can i place the thumbnail buttons and control buttons over the image. You can view the result in the following url:
http://www.creative-showcase.co.uk/BirdStudiosOld/Videos/test/scrllGallAnd.html
The working swf is with the following url:
http://www.creative-showcase.co.uk/BirdStudiosOld/Videos/test/scrllGall.html
The code that i used for creating thumbnail is following
import flash.display.DisplayObject;
import flash.display.*;
import flash.display.Loader;
import flash.events.MouseEvent;
import flash.events.Event;
import flash.events.TimerEvent;
import flash.text.*;
import flash.net.*;
import flash.utils.Timer;
import gs.TweenLite;
import gs.easing.*;
var xmlURL:String = "http://www.creative-showcase.co.uk/BirdStudiosOld/Videos/test1/images.xml";
var loadedImages:Array = [];
var imageURLs:Array = [];
var thumbArr:Array = [];
var imageLoader:Loader;
var prevImage:DisplayObject;
var currentImage:DisplayObject;
var thumbContainer:MovieClip;
var currThumb:MovieClip;
var prevThumb:MovieClip = null;
var showTimer:Timer;
var timerDuration:int = 5000;
var tweenDuration:int = 2;
var currentIndex:int = 0;
var activIndx:Number = 0;
var slidesHolder:Sprite;
var prvFlag:Boolean = false;
var nxtFlag:Boolean = false;
var twnFlag:Boolean = false;
var rt_lt_Flag:Boolean = true;
var myXMLURL:URLRequest = new URLRequest(xmlURL);
var xmlLoader:URLLoader = new URLLoader(myXMLURL);
xmlLoader.addEventListener(Event.COMPLETE, xmlLoaded);
xmlLoader.load(myXMLURL);
var a:int = 90;
ctrlBox.btnPlay.buttonMode = true;
ctrlBox.nextImg.buttonMode = true;
ctrlBox.prevBtn.buttonMode = true;
ctrlBox.btnPause.buttonMode = true;
ctrlBox.btnPlay.visible = false;
ctrlBox.btnPause.addEventListener(MouseEvent.CLICK,stopScroll);
ctrlBox.btnPlay.addEventListener(MouseEvent.CLICK,startScroll);
ctrlBox.nextImg.addEventListener(MouseEvent.CLICK,shwNext);
ctrlBox.prevBtn.addEventListener(MouseEvent.CLICK,shwPrev);
function xmlLoaded(e:Event):void {
     var a:int = 45;
     e.target.removeEventListener(Event.COMPLETE, xmlLoaded);
     processXML(XML(e.target.data));
function processXML(xml:XML):void {
     var len:int = xml.children().length();
     var tempVar:String;
     for (var i:int = 0; i < len; i++) {
          tempVar = "http://www.creative-showcase.co.uk/BirdStudiosOld/Videos/test1/" + xml..item[i]..image;
          //trace(tempVar)
          imageURLs.push(tempVar);
     preload();
     createThumbs();
function createThumbs():void{
    thumbContainer = new MovieClip();
    addChild(thumbContainer);
    for(var i:int=0;i<9;i++){
        var thmbHolder:MovieClip = new MovieClip();
        thumbContainer.addChild(thmbHolder);
        //MovieClip(this.root).swapChildren(currentImage, ctrlBox);
        thmbHolder.buttonMode = true;       
        var thmb:thumbClass = new thumbClass();           
        thmbHolder.addChild(thmb);
        thumbArr.push(thmbHolder);
        thmbHolder.name = i.toString();       
        thmb.imgNum.text = (i+1).toString();       
        thmbHolder.addEventListener(MouseEvent.CLICK,showImage)
        //trace(thmb.imgNum.text)
        thmbHolder.x = i*(thmbHolder.width+5)+5;
    thumbContainer.y = stage.stageHeight - thumbContainer.height;
function showImage(e:MouseEvent):void{   
    var imgIndx:Number = e.target.parent.parent.name;
    prevThumb = currThumb;
    currThumb = e.target.parent.parent;
    currThumb.buttonMode = false;
    if(activIndx != imgIndx){
        prevThumb.buttonMode = true;
        currentIndex = imgIndx-1;
        shwNext(null);   
        activIndx = imgIndx;
    } else {
        stopScroll(null);
function preload():void{
     var len:int = imageURLs.length;
     for (var i:int = 0; i < len; i++) {
          imageLoader = new Loader();
          imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onPreloadComplete);
          loadedImages.push(imageLoader);
          imageLoader.load(new URLRequest(imageURLs[i]));
function onPreloadComplete(e:Event):void {
     e.target.removeEventListener(Event.COMPLETE, onPreloadComplete);
     if (!showTimer && loadedImages[0].content &&   loadedImages[1].content ) startShow();
function startShow():void{
     currentImage = loadedImages[0];
     currentImage.alpha = 0;
     slidesHolder = new Sprite();
     var slideMask:Sprite = new Sprite();
     var gr:Graphics = slideMask.graphics;
     gr.beginFill(0xff0000);
     gr.drawRect(0, 0, currentImage.width, currentImage.height);
     gr.endFill();
     addChild(slidesHolder);
     addChild(slideMask);
     slidesHolder.x = slideMask.x = 0;
     slidesHolder.y = slideMask.y = 0;
     slidesHolder.mask = slideMask;
     slidesHolder.addChild(currentImage);
     TweenLite.to(currentImage, 10, { alpha: 1 } );
     showTimer = new Timer(timerDuration);
     showTimer.addEventListener(TimerEvent.TIMER, slideTransition);
     showTimer.start();
function slideTransition(e:TimerEvent):void{
     var nextImage:int;
     if(rt_lt_Flag == true){
         if(nxtFlag == true){
             showTimer.stop();
             nxtFlag = false;
         nextImage = currentIndex < loadedImages.length - 1 ? currentIndex + 1 : 0;
         if (loadedImages[nextImage].content) {
              currentIndex = nextImage;
              loadedImages[currentIndex].x = slidesHolder.width;
              slidesHolder.addChildAt(loadedImages[currentIndex], slidesHolder.getChildIndex(currentImage));
              prevImage = currentImage;
              currentImage = loadedImages[currentIndex];
              showCurrent();
     } else {
         if(prvFlag == true){
             showTimer.stop();
             prvFlag = false;
         nextImage = currentIndex > 0 ? currentIndex - 1 : loadedImages.length - 1;
         if (loadedImages[nextImage].content) {
             currentIndex = nextImage;
             loadedImages[currentIndex].x = -(stage.stageWidth);
             slidesHolder.addChildAt(loadedImages[currentIndex], slidesHolder.getChildIndex(currentImage));
             prevImage = currentImage;
             currentImage = loadedImages[currentIndex];
             showCurrent();
     activIndx = currentIndex;
     //trace(currentIndex)
function showCurrent():void{
     // make sure they have proper alphas
     //prevImage.alpha = 1;
     //currentImage.alpha = 0;
     //TweenLite.to(prevImage, tweenDuration, { x: -slidesHolder.width } );
     twnFlag = true;
     if(rt_lt_Flag == true){
         TweenLite.to(currentImage, tweenDuration, { x: 0, onUpdate:onTweenProgress, onComplete: removePrevious } );
     } else {
         TweenLite.to(currentImage, tweenDuration, { x: 0, onUpdate:onTweenProgress, onComplete: removePrevious } );
function onTweenProgress():void{       
    if(rt_lt_Flag == true){
         prevImage.x = currentImage.x - prevImage.width;   
    } else {
        prevImage.x = currentImage.x + prevImage.width;
function removePrevious():void {
     if (slidesHolder.contains(prevImage)) slidesHolder.removeChild(prevImage);
     twnFlag = false;
function stopScroll(e:MouseEvent):void{
    ctrlBox.btnPlay.visible = true;
    ctrlBox.btnPause.visible = false;
    showTimer.stop();
function startScroll(e:MouseEvent):void{
    rt_lt_Flag = true;
    ctrlBox.btnPlay.visible = false;
    ctrlBox.btnPause.visible = true;
    resetListener(timerDuration=5000,tweenDuration=2)
function shwNext(e:MouseEvent):void{
    if(twnFlag == false){
        rt_lt_Flag = true;
        stopScroll(null);
        nxtFlag = true;
        resetListener(timerDuration=0,tweenDuration=1)
function shwPrev(e:MouseEvent):void{
    if(twnFlag == false){
        rt_lt_Flag = false;
        stopScroll(null);
        prvFlag = true;
        resetListener(timerDuration=0,tweenDuration=1)
function resetListener(timerDuration,tweenDuration){
        showTimer.removeEventListener(TimerEvent.TIMER, slideTransition);
        showTimer = new Timer(timerDuration);
        showTimer.addEventListener(TimerEvent.TIMER, slideTransition);   
        showTimer.start();
Can you help me on how can i swap the depth of images and control buttons.
Thanks and regards,
Sreelash

Similar Messages

  • Image gallery issue

    If a mod could delete my other post as I am quite far on from that and now having different issues.  Thanks.
    I am really stuck.  I will try my best to explain things clearly.  I am making an image gallery and I got the code from this gallery here.
    http://www.flashmo.com/preview/flashmo_122_3d_curve_gallery
    I made some changes to make it how I wanted it, nothing drastic though.  So now I have a nice gallery.
    Explaining what I am trying to do will better help explain things.  I am creating a modelling agency website.  The gallery I created above will display an individual image of every model in the agency (which it does).  Now when one of the model images is clicked, I then need it to load another image gallery which contains the complete set of images for that model, plus some of their information etc. 
    The way I am approaching it at the moment is to create an individual image gallery for every model in its own fla file.  If say the first model is clicked (image 1) it will load the corresponding swf (1.swf).  I am not sure how good it is loading an swf into what I already have, but couldnt think of another way.  So now I have a seperate image gallery just to test things out, and I need to load it into my original image gallery.
    So, I will show the code for the first gallery (which displays the individual images of each model).  The important methods are p_click (which hides the first gallery and loads the external swf), and on_pic_loaded (which displays the external swf). 
    I hope you understand what I am attempting, as I dont know if I have explained it right as my brain is going dead! (although I am liking the challenge).
    import org.papervision3d.scenes.*;
    import org.papervision3d.cameras.*;
    import org.papervision3d.objects.*;
    import org.papervision3d.materials.*;
    import caurina.transitions.*;
    import flash.net.URLRequest;
    import flash.display.Loader;
    import flash.events.Event;
    import flash.events.ProgressEvent;
    var container_x:Number = stage.stageWidth * 0.5;
    var container_y:Number = stage.stageHeight * 0.5 + 160;
    var container:Sprite = new Sprite();
    container.x = container_x;
    container.y = container_y;
    addChild(container);
    var scene:Scene3D = new MovieScene3D(container);
    var cam:Camera3D = new Camera3D();
    cam.zoom = 6;
    tn_url_target.visible = false;
    tn_title.text = "";
    tn_desc.text = "";
    tn_url.text = "";
    loading_info.text = "";
    url_button.visible = false;
    var no_of_ring:Number = 1;
    var angle:Number = 0;
    var p_dict:Dictionary = new Dictionary();
    var pa:Array = new Array();
    var filename_list = new Array();
    var url_list = new Array();
    var url_target_list:Array = new Array();
    var title_list = new Array();
    var description_list = new Array();
    var folder:String = "photos/thumbs/";
    var i:Number;
    var total:Number;
    var flashmo_xml:XML = new XML();
    var pic_loader:Loader = new Loader();
    var mLoader:Loader = new Loader();
    var xml_loader:URLLoader = new URLLoader();
    xml_loader.load(new URLRequest("thumbnail_list_5.xml"));
    xml_loader.addEventListener(Event.COMPLETE, create_thumbnail);
    function create_thumbnail(e:Event):void
        flashmo_xml = XML(e.target.data);
        total = flashmo_xml.thumbnail.length();
        var angle_per:Number = Math.PI * 2 * no_of_ring / total;
        for( i = 0; i < total; i++ )
            filename_list.push( flashmo_xml.thumbnail[i][email protected]() );
            url_list.push( flashmo_xml.thumbnail[i][email protected]() );
            url_target_list.push( flashmo_xml.thumbnail[i][email protected]() );
            title_list.push( flashmo_xml.thumbnail[i][email protected]() );
            description_list.push( flashmo_xml.thumbnail[i][email protected]() );
            var bfm:BitmapFileMaterial = new BitmapFileMaterial(
                folder + flashmo_xml.thumbnail[i][email protected]());
            bfm.oneSide = false;
            bfm.smooth = true;
            var p:Plane = new Plane(bfm, 100, 100, 2, 2);
            scene.addChild(p);
            var p_container:Sprite = p.container;
            p_container.name = "flashmo_" + i;
            p_dict[p_container] = p;
            p_container.buttonMode = true;
            p_container.addEventListener( MouseEvent.ROLL_OVER, p_rollover );
            p_container.addEventListener( MouseEvent.ROLL_OUT, p_rollout );
            p_container.addEventListener( MouseEvent.CLICK, p_click );
            p.rotationY = - (i * angle_per) * (180/Math.PI) + 90;
            p.x = Math.cos(i * angle_per) * 300;
            p.z = Math.sin(i * angle_per) * 300;
            p.y = Math.floor( i / 22 ) * 5;
    function startLoad()
        var mLoader:Loader = new Loader();
        var mRequest:URLRequest = new URLRequest("/subgallery/1.swf");
        mLoader.load(mRequest);
    function p_rollover(me:MouseEvent)
        var sp:Sprite = me.target as Sprite;
        Tweener.addTween( sp, {alpha: 0.5, time: 0.5, transition:"easeOutExpo"} );
    function p_rollout(me:MouseEvent)
        var sp:Sprite = me.target as Sprite;
        Tweener.addTween( sp, {alpha: 1, time: 0.4, transition:"easeInExpo"} );
    function p_click(me:MouseEvent)
        var sp:Sprite = me.target as Sprite;
        var s_no:Number = parseInt(sp.name.slice(8,10));
        var mRequest:URLRequest = new URLRequest("subgallery/1.swf");
        mLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, on_pic_loaded);
        mLoader.load(mRequest);
        Tweener.addTween( container, { y: 1200, time: 0.6, transition:"easeInExpo" } );
    function goto_URL(me:MouseEvent)
        navigateToURL(new URLRequest(tn_url.text), tn_url_target.text);
    function on_open(e:Event):void
        loading_info.text = "Loading... 0%";
    function on_progress(e:ProgressEvent):void
        var percent:Number = Math.round(e.bytesLoaded / e.bytesTotal * 100);
        loading_info.text = "Loading... " + percent + "%";
    function on_pic_loaded(e:Event):void
        addChild(e.currentTarget.content);
        //addChildAt(mLoader, 1);
        mLoader.x = Math.round(stage.stageWidth - mLoader.width) * 0.5;
        mLoader.y = Math.round(stage.stageHeight - mLoader.height) * 0.5;
        //mLoader.addEventListener(MouseEvent.CLICK, remove_pic);
        Tweener.addTween( mLoader, { alpha: 1, time: 0.8, transition:"easeInExpo" } );
        removeEventListener(Event.ENTER_FRAME, render);
    function remove_pic(e:Event):void
        Tweener.addTween( pic_loader, { alpha: 0, time: 1, onComplete:function() { removeChild(this); } } );
        Tweener.addTween( container, { y: container_y, time: 1, delay: 1, transition:"easeOutExpo"} );
        addEventListener(Event.ENTER_FRAME, render);
        tn_title.text = "";
        tn_desc.text = "";
        tn_url.text = "";
        url_button.visible = false;
    addEventListener(Event.ENTER_FRAME, render);
    function render(e:Event):void
        var distance_x:Number = (stage.mouseX - 400) * 0.0001;
        angle += distance_x;
        cam.x = - Math.cos(angle) * 150;
        cam.z = Math.sin(angle) * 150;
        scene.renderCamera(cam);
    Current issues as the moment is firstly, I dont know if this is the best way to achieve what I want.  Maybe there is a better option someone could tell me about, but you have to remember that each image displayed here will have multiple images to go with it.
    In terms of what I am attempting above, I currently get
    Error #2044: Unhandled ioError:. text=Error #2032: Stream Error. URL: file:///C|/Users/Nick/Desktop/gallery/gallery.xml
        at _1_fla::MainTimeline/frame1()
    I assume its a url error so I changed all urls in both fla's to contain the whole url path.  Didnt seem to work though unless I missed something.
    Any advise on absolutely anything will be so appreciated.
    Many thanks
    Nick

    Sorry about that.  If you can check my history, I normally always thank people who have helped, and I was intending to go back on the last few to sort them out.  Just got my first job so it has been rather hectic and been stressing out to much.  Also, I do things slightly different to other people.  If I receive a correct answer (which I normally do thank), I tend not to actually reply but to thank instead, mainly because if I reply I am pushing unanswered questions further down the list and eventually out of view.  I will go back and sort out the thanks I owe.
    In terms of asking the mods, other forums I visit are normally moderated by the community, so I assumed that someone like yourself might be the moderator.
    I tottally understand what you are saying, and as I say, I am normally on top of this.  Will go back now and sort out the thanks.
    Sorry for the delay.
    Nick

  • Image Gallery issues with Lightbox2 - please help!

    Hello there,
    I am using Lightbox2 image gallery.  The loading.gif and close.gif aren't showing up and I think there's an issue with the path in the lightbox.js file.  The loading and close gifs are located in the Images gallery so I changed the path in the lightbox.js file accordingly - I've gone through this many many times but they are still not showing up.
    Can anyone please help me?
    My website is: www.labellepetraie.com
    Here's where I downloaded the script from: http://www.huddletogether.com/projects/lightbox2/#how
    I have tried all the path combinations mentioned in their forum but to no avail.  What am I doing wrong?
    Thank you for any help you can offer to me.
    Regards!

    Interesting.  I've just looked at your scripts, and it would appear that you have blended two versions of lightbox2 on your page,.  Is that possible?  The lightbox.js file has no function called initLightbox() in it, whereas older versions do.  So, try changing this:
    window.onload = function(){ // use this instead of <body onload …>
         MM_preloadImages('../3websites/home4.jpg','../3web sites/amenities1.jpg','../3websites/inquiry1.jpg','../3websites/rates1.jpg','../ 3websites/photos1.jpg');
            initLightbox();
    to this:
    window.onload = function(){ // use this instead of <body onload …>
         MM_preloadImages('../3websites/home4.jpg','../3web sites/amenities1.jpg','../3websites/inquiry1.jpg','../3websites/rates1.jpg','../ 3websites/photos1.jpg');
            //initLightbox();
    to see if that works.  I think so.  Turns out the initLightbox() function call that we activated by fixing the code before is no longer needed by the lightbox2 script as of v2.04!  I see that it still tells you to put that function call in the body tag, but i think that is wrong (which is very weird to say, can I really be right???).  If you look at the example page online you'll see that he uses this body tag:
    <body>
    and there are no onload's anywhere. 
    Let me know.
    E. Michael Brandt
    www.divahtml.com
    www.divahtml.com/products/scripts_dreamweaver_extensions.php
    Standards-compliant scripts and Dreamweaver Extensions
    www.valleywebdesigns.com/vwd_Vdw.asp
    JustSo PictureWindow
    JustSo PhotoAlbum, et alia

  • Image gallery issues...

    This image gallery uses the HTTPService control to populate an array which is then used to populate thumbnails and a full image however it does not display properly on the first load. Thumbnails do show up upon a refresh but are not very consistant. I could really use some suggestions on how to make this gallery more stable and support all browsers.
    Here is the link to the site
    http://www.michael-willett.com/test/newwork.html
    and the source
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
            layout="vertical"
            verticalAlign="top"
            backgroundColor="black" viewSourceURL="srcview/index.html"
            preinitialize="preInit()"
            backgroundAlpha="0"
            color="white" >
        <mx:Script>
            <![CDATA[
                import mx.collections.XMLListCollection;
                import mx.rpc.events.FaultEvent;
                import mx.rpc.events.ResultEvent;
                import mx.controls.Alert;
                [Bindable]private var xmlListCol:XMLListCollection = new XMLListCollection;
                [Bindable]private var imageArray:Array = new Array;
                private function preInit():void {
                xmlService.send();       
                private function xmlHandler(event:ResultEvent):void {
                    var xmlList:XMLList = event.result.image;
                    xmlListCol.source = xmlList;
                    for each (var image:XML in xmlListCol){
                        var myOBJ:Object = new Object;
                        myOBJ.label = image.picDescription.text();
                        myOBJ.thumbnailImage = image.url.text();
                        myOBJ.fullImage = image.big_url.text();
                        imageArray.push(myOBJ);           
                private function complete():void {
                private function xmlLoadFault(event:FaultEvent):void {
                    Alert.show("Could not load XML file");
            ]]>
        </mx:Script>
        <mx:HTTPService id="xmlService"
            url="data/newwork.xml"
            resultFormat="e4x"
            result="xmlHandler(event)"
            fault="xmlLoadFault(event)"
            showBusyCursor="true" />
        <mx:Panel title="{horizontalList.selectedItem.label}"
                height="100%"
                horizontalAlign="center"
                backgroundColor="#CCCCCC"
                backgroundAlpha="0"
                borderColor="#CCCCCC" >
            <mx:Image id="img"
                    source="{horizontalList.selectedItem.fullImage}"
                    maintainAspectRatio="true"
                    horizontalAlign="center"
                    verticalAlign="middle"
                    width="{horizontalList.width}"
                    height="100%"
                    />
            <mx:ControlBar horizontalAlign="center">
                <mx:HorizontalList id="horizontalList"
                        labelField="label"
                        iconField="thumbnailImage"
                        dataProvider="{imageArray}"
                        itemRenderer="CustomItemRenderer"
                        columnCount="5"
                        columnWidth="125"
                        rowCount="1"
                        rowHeight="125"
                        selectedIndex="0"
                        horizontalScrollPolicy="on"
                        backgroundAlpha="0" />
            </mx:ControlBar>
        </mx:Panel>
    </mx:Application>

    I updated the source  following your suggestion and it does seam to be working better. Is there any other things I could change to make it load more smoothly?
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
            layout="vertical"
            verticalAlign="top"
            backgroundColor="black" viewSourceURL="srcview/index.html"
            preinitialize="preInit()"
            backgroundAlpha="0"
            color="white" >
        <mx:Script>
            <![CDATA[
                import mx.collections.XMLListCollection;
                import mx.rpc.events.FaultEvent;
                import mx.rpc.events.ResultEvent;
                import mx.controls.Alert;
                [Bindable]private var xmlListCol:XMLListCollection = new XMLListCollection();
                private function preInit():void {
                xmlService.send();       
                private function xmlHandler(event:ResultEvent):void {
                    var xmlList:XMLList = event.result.image;
                    xmlListCol.source = xmlList;               
                private function xmlLoadFault(event:FaultEvent):void {
                    Alert.show("Could not load XML file");
            ]]>
        </mx:Script>
        <mx:HTTPService id="xmlService"
            url="data/newwork.xml"
            resultFormat="e4x"
            result="xmlHandler(event)"
            fault="xmlLoadFault(event)"
            showBusyCursor="true" />
        <mx:Panel title="{horizontalList.selectedItem.picDescription.text()}"
                height="100%"
                horizontalAlign="center"
                backgroundColor="#CCCCCC"
                backgroundAlpha="0"
                borderColor="#CCCCCC" >
            <mx:Image id="img"
                    source="{horizontalList.selectedItem.big_url.text()}"
                    maintainAspectRatio="true"
                    horizontalAlign="center"
                    verticalAlign="middle"
                    width="{horizontalList.width}"
                    height="100%"
                    />
            <mx:ControlBar horizontalAlign="center">
                <mx:HorizontalList id="horizontalList"
                        labelField="label"
                        iconField="thumbnailImage"
                        dataProvider="{xmlListCol}"
                        itemRenderer="CustomItemRenderer"
                        columnCount="5"
                        columnWidth="125"
                        rowCount="1"
                        rowHeight="125"
                        selectedIndex="0"
                        horizontalScrollPolicy="on"
                        backgroundAlpha="0" />
            </mx:ControlBar>
        </mx:Panel>
    </mx:Application>

  • Dynamic Image Gallery Issue

    Hello All!
    I am creating a dynamic image gallery, but when my external
    images load in the empty movie clip, all the images are loading in
    the same size/dimension. Does anyone know how I can command the MC
    to load the images in different sizes, another words - to load them
    according to its own size?
    here's the AS
    onClipEvent (load)
    function imageMove()
    var _loc1 = this;
    for (i = 1; i <= num_of_image; i++)
    mc = _loc1["image" + i];
    if (i < hit)
    tempx = small * (i - 1) + 30;
    temps = small - 5;
    mc.useHandCursor = true;
    else if (i > hit)
    tempx = big + small * (i - 2) + 30;
    temps = small - 5;
    mc.useHandCursor = true;
    else
    tempx = small * (i - 1) + 150; //distance of how far out the
    displayed image jumps.
    temps = big - 5; //distance between the displayed image and
    thumbnails.
    mc.swapDepths(1000);
    display = txt
    mc.useHandCursor = false;
    } // end else if
    mc._x = mc._x + (tempx - mc._x) / 3; //number of pixals on
    x-axis the displayed image moves over to right side before growing
    big.
    mc._width = mc._width + (temps - mc._width) / 3; //number of
    pixals on x-axis the displayed image moves over to left side before
    growing big.
    mc._height = mc._width * 4 / 3;
    if (Math.abs(mc._width - temps) <= 1)
    title._x = hit < 5 ? (_loc1["image" + hit]._x + big / 2) :
    (_loc1["image" + hit]._x - big / 2 - 100);
    title._y = 100;
    } // end if
    } // end of for
    } // End of the function
    function loopHye()
    if (hit != num_of_image)
    ++_global.hit;
    else
    _global.hit = 1;
    } // end else if
    } // End of the function
    getURL("FSCommand:allowscale", false);
    big = 300;
    //Large image width (400 works best for my portfolio site)
    small = 60;//Small image width (40 works well for my
    portfolio site)
    num_of_image = 8;//Total number of images
    timeGap = none;//Speed (speed of gaptime when each image is
    displayed automatically. "2000" is default of this original file.
    larger the number the slower the image changes. (type in "none"
    will stop automatic images from changing.
    _global.hit = 0;//First displyed image number (type "0" to
    stop images from growing out)
    txt = [" ", "image1", "image2", "image3", "image4", "image5",
    "image6", "image7", "image8"];//insert text of each images between
    for (i = 1; i <= num_of_image; i++)
    attachMovie("image", "image" + i, i);
    loadMovie("image/" + i + ".jpg", this["image" +
    i].tar);//image folder path
    mc = this["image" + i];
    mc._x = small * (i - 1) + 30;
    mc._y = 200; //where on the axis should the displays be.
    mc._width = small - 5;
    mc._height = mc._width * 4 / 3;
    this["image" + i].onRelease = function ()
    clearInterval(interval);
    _global.hit = this._name.substr(5);
    interval = setInterval(loopHye, timeGap);
    } // end of for
    interval = setInterval(loopHye, timeGap);
    onClipEvent (enterFrame)
    imageMove();
    check out the file
    http://www.wendiland.com/Gallery122b.fla
    this is what the current gallery looks like
    http://www.wendiland.com/print2.html
    I'd appreciated if someone replies with any sort of
    suggestions! thanks in advance!!!
    - W£NDI

    if you google with "dynamic image gallery", you'll find a lot
    of
    tutorials & examples including pre-programmed solutions
    if you prefer to do it yourself, you need to deal with
    dynamic sites. DW
    help chapters Preparing to Build Dynamic Sites, Making Pages
    Dynamic &
    Developing Applications Rapidly can also help to understand
    in fact you don't need a database, the images can be read
    from the
    folder they're stored. that way to update a gallery you only
    need to
    remove/replace/add images. one folder for each gallery
    and the application development forum is best suited for your
    question
    BTW, some nice photos in your page
    hth,
    jdoe
    uvi wrote:
    > I'm trying to create a dynamic image gallery that is
    updated from a database, i
    > managed to create a simple mysql database
    > using phpmy admin, so I could update my image gallery
    more often, I saw
    > something that I like but I have no idea how to create
    it here is the example:
    >
    http://flight001.com/store/trip.htm?itemid=307&sid=201&page=2
    > I didnt manage to create this with dynamic table from
    within dreamweaver 8,
    > maybe I just don't know how,
    > this is the link to a gallery on my website:
    >
    http://www.yuvallavy.com/work/scenic/scenic.htm.
    I need all the help I can get
    > I'm using dreamweaver 8 on a Mac and using PHP/MySql
    server model.
    >

  • Anyone have a good tutorial for an AS3-XML image gallery?

    I'm a pretty good Flash developer, but I've never worked with XML in Flash.  I'm looking for a good tutorial on creating an XML driven image gallery, but I have yet to really find anything.  Does anyone out there have a good tutorial?  Thanks!
    Jesse

    Your best bets for getting something more specific to your needs will either be to...
    - search Google using terms like "AS3 XML gallery tutorial" and "AS3 XML slideshow tutorial"
    - take one fairly complicated tutorial and learn how it works down to understanding each element of what is being done.  Once you a proper level of understanding you should be able to reason out how to create one of your own with whatever different features you prefer

  • Image gallery tweening issue

    Hi,
    I use this smooth, nice (and simple) image gallery, and I am very happy with it. However sometimes some of the images stops when rolling in, and I have to press Fw again to jump to the next one. I can't figure out where the bug lies, as I mentioned it appears rarely but it blows up the whole thing.
    Maybe somone could take a look at it:
    Thanks!
    import fl.transitions.Tween;
    import fl.transitions.easing.*;
    import flash.utils.Timer;
    import flash.events.TimerEvent;
    var currentImg:uint = 0;
    image_2.x=-1500;
    var imgArrayFw:Array = new Array(image_2, image_1, image_3, image_4, image_5, image_6);
    var imgArrayBw:Array = new Array(image_2, image_1, image_3, image_4, image_5, image_6);
    buttonFw_btn.addEventListener(MouseEvent.CLICK, doNextTween);
    function doNextTween(e:MouseEvent):void
        imgArrayFw[currentImg].x = -imgArrayFw[currentImg].width;
        var myTween:Tween = new Tween(imgArrayFw[currentImg], "x", Strong.easeInOut, imgArrayFw[currentImg].x,0, 2, true);
        addChild(imgArrayFw[currentImg]);
    addChild(buttonFw_btn);
    addChild(buttonBw_btn);
    currentImg = (currentImg+1)%imgArrayFw.length;
    buttonBw_btn.addEventListener(MouseEvent.CLICK, doPrewTween);
    function doPrewTween(e:MouseEvent):void
        imgArrayBw[currentImg].x = imgArrayBw[currentImg].width;
        var myTween:Tween = new Tween(imgArrayBw[currentImg], "x", Strong.easeInOut, imgArrayBw[currentImg].x,0, 2, true);
        addChild(imgArrayBw[currentImg]);
    addChild(buttonBw_btn);
    addChild(buttonFw_btn);
    currentImg = (currentImg+1)%imgArrayBw.length;

    I'd recommed never using the included Tweening classes and start using a good tweening engine like TweenLite/TweenMax from greensock.com. The Adobe ones are slow and problematic - one of the issues they have is tweens stopping like you described. It should be pretty simple to swap out to using tweenlite and once you do, you'll find the syntax much easier.

  • How can I create an image gallery with "next" buttons?

    So I am almost done with my portfolio site (YES!)..now I just need the actual content (the images). My site is written in AS3.
    I've watched many tutorials on how to create an image gallery (auto scrolling ones, scrolling ones that require mouse hover, etc etc), but those aren't what I am looking for.
    I want a gallery that looks exactly like this one here:
    http://jalbum.net/res/help/integrating-tutorial.html
    I have a lot of work to display in my porfolio so there must be arrows at the end of the thumbnails so I can add more stuff. So I am just stumped on how to make the image gallery work with the ability to scroll for more photos with the click of the arrows.
    Any ideas? Thank you.

    Watching tutorials and learning from them are two different things.  If you have learned from them you should be able to use what you have learned to devise a gallery such as the one you link to.  If you have learned from them and cannot use what you learned, then you probably need to find/learn more.
    If you study the design you linked you should be able to reason out what elements you need to devise... it is not overly complicated. 
    For the large picture you could have a Loader into which you load whatever image is selected from the thumnails. To get a brief transition you could just set the alpha of the Loader to 0 when an image change is occuring and gradually fade it in after the image has loaded.
    The greatest challenge you are likely to face is in getting the thumbnails to advance back and forth depending on which is selected.  All of the thumbs would be placed in a container (movieclip or sprite) and that would be masked so that only a portion of them is visible. 
    All thumbs that are not selected have their alpha property set to some value less than 1.  Selecting one calls for the file it associates with to be loaded into the Loader.  If the choice happens to lie off screen, then you need to move the movieclip that contains all of the thumbs some set value in the right (+x) or left (-x) direction.
    If you want the thumbnails to wrap infinitely then when one leave the thumbnails area for movement in a direction, you need to take that thumb and relocate it to the other end of the thumbs in the container.

  • How do you build an image gallery in Flash CS3 actionscript3?

    I am building my entire website in flash cs3, actionscript3
    but I really need help building an image gallery. What I need is a
    horizontal scroll bar that contains thumbs within it and then loads
    the full size image right above the scroll bar. Anyone has any
    suggestions for books, tutorials or even safe places to purchase
    the fla that I can customize it?

    if you want help understanding as3 check:
    http://www.senocular.com/flash/tutorials/as3withflashcs3/
    if you want to purchase a custom fla that does exactly what
    you want send me an email via my website.

  • Image Gallery in a tabbed panel

    This seems to be an intermittent issue for me (comes & goes). But, when placing an image gallery in a tabbed panel if I select multiple photos to add (at once) it will expand the tab out to 70 thousand or so pixels wide but, if I add photos 1 at a time it seems to work just fine.
    ( I am using the add images... folder to add images )

    This seems to be an intermittent issue for me (comes & goes). But, when placing an image gallery in a tabbed panel if I select multiple photos to add (at once) it will expand the tab out to 70 thousand or so pixels wide but, if I add photos 1 at a time it seems to work just fine.
    ( I am using the add images... folder to add images )

  • Urgent Help with Image Gallery

    Hi,
    I really need help with an image gallery i have created. Cannot think of a resolution
    So....I have a dynamic image gallery that pulls the pics into a movie clip and adds them to the container (slider)
    The issue i am having is that when i click on this i am essentially clicking on all the items collectively and i would like to be able to click on each image seperately...
    Please see code below
    var xml:XML;
    var images:Array = new Array();
    var totalImages:Number;
    var nbDisplayed:Number = 1;
    var imagesLoaded:int = 0;
    var slideTo:Number = 0;
    var imageWidth = 150;
    var titles:Array = new Array();
    var container_mc:MovieClip = new MovieClip();
    slider_mc.addChild(container_mc);
    container_mc.mask = slider_mc.mask_mc;
    function loadXML(file:String):void{
    var xmlLoader:URLLoader = new URLLoader();
    xmlLoader.load(new URLRequest(file));
    xmlLoader.addEventListener(Event.COMPLETE, parseXML);
    function parseXML(e:Event):void{
    xml = new XML(e.target.data);
    totalImages = xml.children().length();
    loadImages();
    function loadImages():void{
    for(var i:int = 0; i<totalImages; i++){
      var loader:Loader = new Loader();
      loader.load(new URLRequest("images/"+String(xml.children()[i].@brand)));
      images.push(loader);
    //      loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,onProgress);
         loader.contentLoaderInfo.addEventListener(Event.COMPLETE,onComplete);
    function onComplete(e:Event):void{
    imagesLoaded++;
    if(imagesLoaded == totalImages){
      createImages();
    function createImages():void{
    for(var i:int = 0; i < images.length; i++){
      var bm:Bitmap = new Bitmap();
      bm = Bitmap(images[i].content);
      bm.smoothing = true;
      bm.x = i*170;
      container_mc.addChild(bm);
          var caption:textfile=new textfile();
          caption.x=i*170; // fix text positions (x,y) here
       caption.y=96;
          caption.tf.text=(xml.children()[i].@brandname)   
          container_mc.addChild(caption);

    yes, sorry i do wish to click on individual images but dont know how to code that
    as i mentioned i have 6 images that load into an array and then into a container and i think that maybe the problem is that i have the listener on the container so when i click on any image it gives the same results.
    what i would like is have code thats says
    if i click on image 1 then do this
    if i click on image 2 then do something different
    etc
    hope that makes sense
    thanks for you help!

  • Image gallery in webcenter using content presenter template

    Hi,
    I created a content presenter template for image gallery in webcenter.
    The images from UCM are not displayed without log in to the webcenter application.
    I am getting a error like
    " Error calling UCM server associated with repository UCM.  The service GET_FILE was called with user anonymous at time 3/18/15 11:12 AM, and returned statuscode -1.
    oracle.stellent.ridc.protocol.ServiceException: Unable to download 'HSCSRV154.ALLE006130'. Access denied by records manager "
    Once i log in the images are displayed.
    What is the problem here?please help.
    I am using the latest webcenter extension in jdev 11.1.1.7
    Thanks,
    chandrasekar M

    Hi Vinod,
    I tried using af:image like below and its the same issue.I have read in most of the blogs that since this is in the content presenter template, the image has to be displayed using output text with escape set to false.
    <af:image source="#{node.propertyMap['REGDEF:Image'].asTextHtml}" id="image5"/>
    I am not using <img> anywhere, its just that on the webpage when the image doesnt appear, I tried to see the source of the image using Firebug and it shows following:
    <img src="${wcmUrl('rendition','xyz/web')} " alt = "Logo">
    Edited by: Swathi Patnam on Jul 13, 2012 6:00 PM

  • Image Gallery Rollover effect

    First Issue: I've dynamically created the image gallery, on
    rollover or mouseover i'm using the zoom in effect, on rollout i'm
    using the zoom out effect (that will return to the original size).
    onrollover
    zm = new Zoom(timg);
    zm.zoomHeightFrom = 1.2;
    zm.zoomWidthFrom = 1.2;
    zm.zoomHeightTo = 1;
    zm.zoomWidthTo = 1;
    zm.end();
    zm.play();
    It is working fine when the mouse is moved slowly (after
    playing the full zoom), if i move rapidly (if i rollout before the
    play effect finishes), the image's position will be changed. Please
    give me a solution for this.
    Second issue: I'm also trying to mask the image. all the
    thumbnails will be inside a canvas. How to mask the image with the
    sprite and use the zoom effect.
    Thanks in advance.

    use google to search for "flash tsunami tutorial".  specify your actionscript version if needed.

  • Image Gallery with cfdirectory with no DB

    Hi
    Im trying to get an image Gallery going with cfdirectory with
    no Database amd pagination through Cfdirectory
    Im current using cfdirectory to create a query and
    cfx_openimage to create thumbnails.
    the issue I have and where Ive been stuck is when a user
    clicks on a thumbnail, how do i get pagination going the next page
    between the photos
    here is my code
    <cfdirectory
    directory="#GetDirectoryFromPath(GetTemplatePath())#/#url.username#/images/#url.date#/"
    name="dirQuery"
    filter="*.jpg. *.jpeg"
    sort="name ASC, size DESC">
    <!--- Get all directory information in a query of
    queries.--->
    <cfquery dbtype="query" name="GetBoth">
    SELECT * FROM dirQuery
    </cfquery>
    <cfoutput>
    <cfloop query="GetBoth">
    <a
    href="/outandabout/#url.username#/images/#url.date#/#getboth.name#"><img
    src="/outandabout/#url.username#/images/#url.date#/thumbs/_#getboth.name#"></a><br>
    </cfloop>
    </cfoutput>
    Thanking you advance

    Your code links directly to the image not a page displaying
    the image. If
    you are wanting pagination you will need to use page to
    display the full
    size image and the paging links.
    Bryan Ashcraft (remove brain to reply)
    Web Application Developer
    Wright Medical Technology, Inc.
    Macromedia Certified Dreamweaver Developer
    Adobe Community Expert (DW) ::
    http://www.adobe.com/communities/experts/
    "stevegio" <[email protected]> wrote in
    message
    news:f58unu$j5$[email protected]..
    > Hi
    > Im trying to get an image Gallery going with cfdirectory
    with no Database
    > amd
    > pagination through Cfdirectory
    >
    > Im current using cfdirectory to create a query and
    cfx_openimage to
    > create
    > thumbnails.
    >
    > the issue I have and where Ive been stuck is when a user
    clicks on a
    > thumbnail, how do i get pagination going the next page
    between the photos
    >
    > here is my code
    >
    >
    > <cfdirectory
    >
    >
    directory="#GetDirectoryFromPath(GetTemplatePath())#/#url.username#/images/#url.
    > date#/"
    > name="dirQuery"
    > filter="*.jpg. *.jpeg"
    > sort="name ASC, size DESC">
    >
    > <!--- Get all directory information in a query of
    queries.--->
    > <cfquery dbtype="query" name="GetBoth">
    > SELECT * FROM dirQuery
    > </cfquery>
    >
    > <cfoutput>
    >
    > <cfloop query="GetBoth">
    >
    > <a
    >
    href="/outandabout/#url.username#/images/#url.date#/#getboth.name#"><img
    >
    src="/outandabout/#url.username#/images/#url.date#/thumbs/_#getboth.name#"></a><
    > br>
    > </cfloop>
    >
    > </cfoutput>
    >
    >
    > Thanking you advance
    >
    >
    >
    >

  • I need to create an image gallery

    I'm looking for a tutorial which explains me how to create a simple AS3 image gallery driven by an XML file.
    The gallery I need is really simple:
    - an horizontal bar placed on the bottom containing the thumbnails which scrolls left and right according to the mouse pointer
    - clicking on a thumbnail the full image must be shown above the thumbnails' bar
    - buttons for prev and next image
    - clicking on the button which opens the gallery I must be able to pass a variable to make the gallery load the proper xml file (I've got 6 different categories to show)
    That's all I need.
    Do you know where I could find a tutorial?

    I'm trying to do it by myself.
    I've decided to give to the xml file this structure
    <imgList>
        <img thumb='img_001_thumb.jpg' full='img_001_full.jpg' desc='image 001' />
        <img thumb='img_002_thumb.jpg' full='img_002_full.jpg' desc='image 002' />
    </imgList>
    I've found some tutorials where they read the attributes in this way
    xml.img@thumb
    xml.img@full
    xml.img@desc
    where xml is an xml variable containing the xml file's data.
    I think that syntax is for AS2, while I'm using AS3 and it say to me that a semicolon is expected before atsign.
    How can I read the attributes thumb, full and desc in AS3?

Maybe you are looking for