Actionscript 3 获取树UIComponent FLEX 4.6中选定项的名称

Actionscript 3 获取树UIComponent FLEX 4.6中选定项的名称,actionscript-3,flash,apache-flex,flex4,flash-builder,Actionscript 3,Flash,Apache Flex,Flex4,Flash Builder,这是我使用FLEX和AS 3.0的第二天,所以我在这方面很新。我试图在树组件中获取所选项目的值,在本例中,它只是一个名称。下面是我创建的树。树内容以编程方式填充了一个名为“cat”的数组。树被填充得很好,但我不知道如何获取当前所选项目的名称 <mx:Tree id="category_tree" x="10" y="80" width="160" height="169" showRoot="true" dataProvider="{cat}" labelField="name">

这是我使用FLEX和AS 3.0的第二天,所以我在这方面很新。我试图在树组件中获取所选项目的值,在本例中,它只是一个名称。下面是我创建的树。树内容以编程方式填充了一个名为“cat”的数组。树被填充得很好,但我不知道如何获取当前所选项目的名称

<mx:Tree id="category_tree" x="10" y="80" width="160" height="169" showRoot="true" dataProvider="{cat}" labelField="name">

在此方面的任何帮助都将不胜感激。提前感谢您的时间。

您可以将更改事件添加到树中,并使用类似于以下内容的回调:

 private function changeEvt(event:Event):void {
        var lableData:*;
        var label:String;

        if (event.currentTarget.selectedItem.@data) {
           labelData = event.currentTarget.selectedItem.@data;
        }

        label = event.currentTarget.selectedItem.@label; 
     }
 }
或者直接访问值

category_tree.selectedItem.@label;

当我尝试分类树时。选择EdItem。@label我得到一个错误。ReferenceError:Error#1081:在对象上找不到属性标签,并且没有默认值。请检查发送到树的数据-同时,在调试器中运行该数据并查看值。另外,请尝试@name-you's last param的labelField设置为name我应该列出我运行了调试器并尝试了sun下的每个名称,包括name param。今天早上我把它弄得更糟了,我找到了答案,我不得不把@符号去掉(selectedItem.name)。出于某种原因,这导致了问题。非常感谢你的帮助,因为你确实让我找到了正确的答案。
category_tree.selectedItem.@label;