使用mx.controls.treeclasses.TreeRow我们可以自定义Tree组件的显示,TreeRow是Tree的默认RowRenderer,我们如果要自定义Tree的显示,一般情况下,如果不想自己修改Tree的默认图标,可以直接继承TreeRow来实现,实现的时候只需要覆盖TreeRow的createChildren()和setValue(item, state)方法。对于这种方式的自定义实现,我们可能需要访问TreeRow的内部确省定义的一些组件,如Tree的各节点图标、各节点的值什么的,MM的官方文挡,对这些定义并没有说明,不过我们如果Inspect一下Tree组件,就可以知道内部的个组件的ID号了,通过这些ID号就可以访问相应的图标等等…

具体的定义如下:



说明:

indent:Number,指的是各ROW的缩进值;

disclosure:MovieClip,指的是缩放树的图标;

nodeIcon:MovieClip,指各NODE的图标;

cell:Label,各NODE的文本显示。

另外,

rowIndex:Number,指当前Row的在Tree中可见ROW数组中的index值;

item:Object,指当前Row;

owner:Tree,指当前Tree。