Flex Tree 如何在不选定节点的情况下进行添加(Demo)
发布时间:2020-12-15 04:19:53 所属栏目:百科 来源:网络整理
导读:?xml version="1.0" encoding="utf-8"?mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="800" height="500" creationComplete="init()" xmlns:ns1="aaa.*"mx:Script![CDATA[import mx.events.TreeEvent;import mx.collec
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="800" height="500" creationComplete="init()" xmlns:ns1="aaa.*"> <mx:Script> <![CDATA[ import mx.events.TreeEvent; import mx.collections.ArrayCollection; private function handleItemClose(evt:TreeEvent):void { tree1.expandChildrenOf(evt.item,false); } private function init():void { this.tree1.addEventListener(TreeEvent.ITEM_CLOSE,handleItemClose); } private function getAllChildLabel():void { if(tree1.selectedItem) { var allChild:Array = []; var xml:XML = tree1.selectedItem as XML; this.getAllChild(allChild,xml); this.textArea1.text = allChild.join("n"); } } private function getAllChild(allChild:Array,xml:XML):void { allChild.push(xml.@label); if(xml.children().length()>0) { for each(var node:XML in xml.children()) arguments.callee(allChild,node); } } private function getAllParentLabel():void { if(tree1.selectedItem) { var allParent:Array = []; var xml:XML = tree1.selectedItem as XML; this.getAllParent(allParent,xml); this.textArea1.text = allParent.join("n"); } } private function getAllParent(allParent:Array,xml:XML):void { allParent.push(xml.@label); if(xml.parent()) { arguments.callee(allParent,xml.parent()); } } private function getTreeLabel():void { if(tree1.selectedIndex = 1) { var s:XML = tree1.selectedItem as XML; var newNode:XML =<Pfolder/>; newNode.@label="自定义333333"; // 添加节点 if (s.length() > 0) { s[0].appendChild(newNode); } } } ]]> </mx:Script> <mx:Tree id="tree1" labelField="@label" showRoot="true" width="300" height="300"> <mx:XMLListCollection id="MailBox"> <mx:XMLList> <folder label="Mail"> <folder label="INBOX"/> <folder label="Personal Folder"> <Pfolder label="Business" /> <Pfolder label="Demo" /> <Pfolder label="Personal" isBranch="true" /> <Pfolder label="Saved Mail" /> </folder> <folder label="Sent" /> <folder label="Trash" /> </folder> <folder label="自定义视图"> <folder label="自定义视图"> <Pfolder label="节点1" /> <Pfolder label="节点2" /> </folder> </folder> </mx:XMLList> </mx:XMLListCollection> </mx:Tree> <mx:Button id="button1" x="201" y="308" label="得到选择节点下的所有子节点label值" click="getAllChildLabel()" /> <mx:Button id="button2" x="201" y="338" label="得到选择节点的所有父节点label值" click="getAllParentLabel()" /> <mx:Button id="button3" x="201" y="368" label="得到树所有及诶单label值" click="getTreeLabel()" /> <mx:TextArea id="textArea1" x="317" y="2" width="276" height="298"/> </mx:Application> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |