在Tree组件上添加CheckBox组件

来源:互联网 发布:计算机三级网络试题 编辑:程序博客网 时间:2024/05/17 00:50

网上遇到很多需要在Tree控件添加CheckBox等控件的问题,本以为把Tree的itemRenderer设置成mx.controls.CheckBox 就可以完事了,但是试了之后才发现没有这么简单 . . .


Tree在初始化的时候默认给自己设置itemRenderer属性。此属性值也是Flex现成的:mx.controls.treeClasses.TreeItemRenderer。 它内部分为三部分:1,icon也是就三角形的小图标。2,disclosureIcon文件夹图标。3,label显示的文字. 我只要在label前面加上一个CheckBox就行了。


于是写了一个类:TreeCheckBoxRenderer继承mx.controls.treeClasses.TreeItemRenderer源码如下:

 

 

在页面中的使用方法,如下:

 

 

注意:selected属性很重要,此属性在数据源内,标致当前节点的CheckBox是否选中。点击CheckBox会自动改变响应的数据源。 如果想知道哪些被选中的话, 就遍历Tree的dataProvider

 

效果图如下:

 

 

 

原创粉丝点击