Flex中为Tree节点设置图标

首先,在src下建立一个assets文件夹,放几张图片。

其次,编写代码如下:

<?xml version="1.0" encoding="utf-8"?>  
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" fontSize="14" layout="absolute">  
<mx:Script>  
   <![CDATA[     
    [Embed(source="assets/boy.jpg")]  
    public var boyIcon:Class;  
     
    [Embed(source="assets/girl.jpg")]  
    public var girlIcon:Class;  
    
    // 根据结点的属性设置节点图标  
    private function SetIcon(item:Object):*  
    {  
      var xml:XML = item as XML;  
       
      if(xml.attribute("sex")=="boy")  
      {  
        return boyIcon;  
      }  
      else 
      {  
        return girlIcon;  
      }     
    }  
    
    // Tree控件的数据源  
    [Bindable]  
    public var departmentTree:XML=
      <member name="小李" sex="boy">
      <member name="王志" sex="boy">  
       <member name="赵强" sex="boy" />             
       <member name="李丽" sex="girl" />         
      </member>   
      <member name="韩梅梅" sex="girl"> 
       <member name="孙艳" sex="girl"/>         
      </member>      
     </member>
         
   ]]>  
</mx:Script>  
 
<mx:Tree x="216" y="0" width="318" 
 height="450" id="treeXml" 
   dataProvider="{departmentTree}" labelField="@name" 
   showDataTips="true" iconFunction="SetIcon" />  
</mx:Application>

最后看看,运行效果如下图:

Flex中为Tree节点设置图标