A Flash Developer Resource Site

Results 1 to 3 of 3

Thread: Expand flex tree on open

  1. #1
    Member
    Join Date
    Jul 2008
    Posts
    94

    Expand flex tree on open

    Hiya, I have a flex tree and every time it loads it only shows the one root folder, and i'd like it to show its full contents. I've seen loads of examples of people doing this, but just can't get it to work on mine. I think its because my tree is loading from an HTTPService, so whenever I try something it tries to do it before the tree has loaded, or something! Flex is doing my head in!

    Can anyone show me where I should put extra code?

    PHP Code:
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="initVars()" height="400" width="150" backgroundGradientAlphas="[1.0, 1.0]" backgroundGradientColors="[#D4F5FB, #D4F5FB]" themeColor="#FFFFFF" borderStyle="none" borderColor="#FFFFFF">
        <mx:Script>
            <![CDATA[
        //treeXML.send();
                [Bindable]
                public var userid:String;
                [Bindable]
                public var userURL:String;
                
                private function initVars():void {
                    userid = Application.application.parameters.userid;
                    showmeid.text = "$_SESSION['userid'] = " + userid;
                    userURL = "http://localhost/upload/xml.php?userid=" + userid;
                    showmeurl.text = userURL;
                    treeXML.send();
                 }

                
                [Bindable]
                private var textVis:Boolean = false;
                
                private function switchVis():void{
                    if(textVis==true)
                    {
                        textVis=false;
                    }
                    else
                    {
                        textVis=true;
                    }
                }
                
                [Bindable]
                [Embed("../assets/fclose.png")]
                private var myFolderClosedIcon:Class;

                [Bindable]
                [Embed("../assets/fopen.png")]
                private var myFolderOpenIcon:Class;

                [Bindable]
                [Embed("../assets/fclose.png")]
                private var myDefaultLeafIcon:Class;
                
                [Bindable]
                public var selectedNode:XML;
            
                // Event handler for the Tree control change event.
                public function treeChanged(event:Event):void {
                    selectedNode=Tree(event.target).selectedItem as XML;
                    var url:String = selectedNode.@nodeURL;
                    var request:URLRequest = new URLRequest(url);
                    try {
                          navigateToURL(request, '_self'); // second argument is target
                    } catch (e:Error) {
                          trace("Error occurred!");
                    }
                }    
            ]]>
        </mx:Script>
        
        <mx:HTTPService id="treeXML" url="{userURL}" resultFormat="e4x" />
        <mx:Tree
        horizontalScrollPolicy="on"  
        id="mytree" 
        dataProvider="{treeXML.lastResult.dir}" 
        labelField="@name" 
        change="treeChanged(event)"
        top="0" 
        left="0" 
        right="0" 
        bottom="30"
        borderStyle="none" backgroundColor="#D4F5FB"
        defaultLeafIcon="{myDefaultLeafIcon}"
           folderOpenIcon="{myFolderOpenIcon}"
        folderClosedIcon="{myFolderClosedIcon}"/> 
        
        <mx:Button
            y="372.5" 
            label="Refresh menu" 
            click="treeXML.send()" 
            horizontalCenter="0" 
            cornerRadius="0" 
            borderColor="#90A599" 
            fontWeight="normal" 
            fontFamily="Trebuchet MS"
            fillAlphas="[1.0, 1.0, 1.0, 1.0]" 
            fillColors="[#F6F6EF, #F6F6EF, #F6F6EF, #F6F6EF]" 
            themeColor="#90A599"
         fontSize="12" width="129" height="24.5"/>
        <mx:HRule y="368" height="2" left="0" right="0"/>
        <mx:TextArea x="10" y="213" width="130" id="showmeid" visible="{textVis}"/>
        <mx:TextArea x="10" y="265" width="130" height="86" id="showmeurl"  visible="{textVis}"/>
        <mx:LinkButton click="switchVis()" x="73" y="333" label="Developer" textAlign="right" paddingRight="0" paddingBottom="0" paddingLeft="0" paddingTop="0"/>
        <mx:TextArea x="10" y="10" width="130" height="195" id="showmeresult"  visible="{textVis}"/>

    </mx:Application>
    The xml that I'm getting from the http://localhost/upload/xml.php?userid=2 (incase you want to have a go recreating this) is:

    PHP Code:
    <folders
    <
    dir name='Home' nodeURL='http://localhost/tidy/index.php?folder=1'
    <
    dir name='10' nodeURL='http://localhost/tidy/index.php?folder=23'
    <
    dir name='1010' nodeURL='http://localhost/tidy/index.php?folder=56'
    <
    dir name='Tralaaaa!' nodeURL='http://localhost/tidy/index.php?folder=58'
    </
    dir
    </
    dir
    </
    dir
    <
    dir name='David's folder' nodeURL='http://localhost/tidy/index.php?folder=22'> 
    </dir
    <
    dir name='fds' nodeURL='http://localhost/tidy/index.php?folder=21'
    </
    dir
    <
    dir name='Folder 1' nodeURL='http://localhost/tidy/index.php?folder=2'
    </
    dir
    <
    dir name='motor' nodeURL='http://localhost/tidy/index.php?folder=20'
    </
    dir
    </
    dir
    </
    folders
    Can annnnnnnyone help me pleeeeeaaaaaasssssse!!!

  2. #2
    Flash/Flex Developer samac1068's Avatar
    Join Date
    Apr 2007
    Location
    Here, no there
    Posts
    1,813
    I'm not sure of the single command, but in your tree object, you'll use either openItems or expandItems. Since I haven't done it before I can't give too much other than that. However, this tut many have more information, just scroll down about half way.

    http://livedocs.adobe.com/flex/3/htm...ontrols_8.html
    Some people are like Slinkies, not really good for anything, but they bring a smile to your face when pushed down the stairs.

  3. #3

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  




Click Here to Expand Forum to Full Width

HTML5 Development Center