如何在Flex中自动根据属性更改节点的图标

时间:2012-03-15 03:59:47

标签: flex icons

我想在Flex中自动/动态地根据属性更改节点的图标。 贝娄是我的代码:

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
           xmlns:s="library://ns.adobe.com/flex/spark"
           xmlns:mx="library://ns.adobe.com/flex/mx"
           width="540" height="610" chromeColor="#E8E50A">
<fx:Declarations>
    <fx:XMLList id="user_list">
        <node user="Running Center">
            <node user="System Administrator">
                <node icon="admin" user="admin" type="admin"/>
                <node icon="home" user="root" type="home"/>
            </node>
            <node user="Common User">
                <node icon="user" user="Udo" type="user"/>
                <node icon="user" user="Steven" type="user"/>
                <node icon="user" user="Peter" type="user"/>                    
            </node>         
        </node>
    </fx:XMLList>
</fx:Declarations>
<fx:Script>
    <![CDATA[
        [Bindable]
        [Embed(source="assets/admin.png")] 
        public var admin:Class; 

        [Bindable]
        [Embed(source="assets/home.png")] 
        public var home:Class; 

        [Bindable]
        [Embed(source="assets/user.png")] 
        public var user:Class; 
    ]]>
</fx:Script>
<mx:Tree id="user_tree" 
         x="10" y="51" width="206" 
         height="207" dataProvider="{user_list}"
         iconField="@icon" labelField="@user" showRoot="true" />
</s:Application>

这是效果图像:

我很抱歉我无法发布图片。 贝娄是链接。

http://i.stack.imgur.com/oZG6v.jpg

例如,也许我应该改变这样的代码?

<node icon="{...}" user="admin" type="admin"/>

任何帮助都是有益的。提前谢谢。