判断TREE的某个节点是否是叶节点.

isBranch() 方法
示例:


代码:
<? xml version="1.0" encoding="utf-8" ?>
<!--  http://blog.flexexamples.com/2007/11/30/using-the-isbranch-method-to-determine-if-a-tree-item-is-a-branch-or-leaf/  -->
< mx:Application  xmlns:mx ="http://www.adobe.com/2006/mxml"
        layout
="vertical"
        verticalAlign
="middle"
        backgroundColor
="white" >

    
< mx:Script >
        
<![CDATA[
            import mx.events.ListEvent;

            private function tree_itemClick(evt:ListEvent):void {
                var itemIsBranch:Boolean = tree.dataDescriptor.isBranch(tree.selectedItem);
                lbl.text = itemIsBranch.toString();
            }

            private function tree_labelFunc(item:XML):String {
                var returnStr:String = item.@label;
                var itemIsBranch:Boolean = tree.dataDescriptor.isBranch(item);
                if (itemIsBranch) {
                    returnStr += " (BRANCH)";
                }
                return returnStr;
            }
        
]]>
    
</ mx:Script >

    
< mx:XML  id ="xmlDP" >
        
< node >
            
< node  label ="1.a"   />
            
< node  label ="1.b"   />
            
< node  label ="1.c" >
                
< node  label ="1.c.i"   />
                
< node  label ="1.c.ii"   />
                
< node  label ="1.c.iii"   />
                
< node  label ="1.c.iv"   />
                
< node  label ="1.c.v"   />
            
</ node >
            
< node  label ="1.d"   />
            
< node  label ="1.e" >
                
< node  label ="1.e.i"   />
                
< node  label ="1.e.ii"   />
                
< node  label ="1.e.iii" >
                    
< node  label ="1.e.iii.A"   />
                
</ node >
                
< node  label ="1.e.iv"   />
            
</ node >
            
< node  label ="1.f"   />
        
</ node >
    
</ mx:XML >

    
< mx:ApplicationControlBar  dock ="true" >
        
< mx:Form  styleName ="plain" >
            
< mx:FormItem  label ="isBranch():" >
                
< mx:Label  id ="lbl"  fontWeight ="bold"   />
            
</ mx:FormItem >
        
</ mx:Form >
    
</ mx:ApplicationControlBar >

    
< mx:Tree  id ="tree"
            dataProvider
=" {xmlDP} "
            labelFunction
="tree_labelFunc"
            showRoot
="false"
            width
="50%"
            rowCount
="6"
            itemClick
="tree_itemClick(event);"   />

</ mx:Application >

你可能感兴趣的:(tree)