Mega Code Archive

 
Categories / Flex / Components
 

Open nodes in the Tree control based on the values of query string parameters

<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"     layout="absolute" creationComplete="initApp()">     <mx:Script>                  import mx.collections.XMLListCollection;         [Bindable]         private var treeData:XML =         <root>             <node label="A">                 <node label="B">                     <node label="C"/>                     <node label="D"/>                 </node>                 <node label="E" isBranch="true"/>                 <node label="F" isBranch="true"/>             </node>             <node label="G">                 <node label="J" isBranch="true"/>                 <node label="Q" isBranch="true"/>                 <node label="W" >                    <node label="R"/>                    <node label="Y"/>                 </node>             </node>         </root>;         private var openSequence:Array = [1,2,3];         private function initApp():void {             var nodeList:XMLListCollection = myTree.dataProvider as XMLListCollection;             var node:XMLList = nodeList.source;             for(var i:int=0; i < openSequence.length; i++) {                 var j:int = openSequence[i];                 var n:XML = node[j];                 if( n.children() != null ) {                     myTree.expandItem(n,true,false);                     node = n.children();                 } else {                     break;                 }             }             if( n != null ) myTree.selectedItem = n;         }            </mx:Script>     <mx:Tree id="myTree" y="88" width="221" height="257"         horizontalCenter="0" dataProvider="{treeData.node}"         labelField="@label" /> </mx:Application>