首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > flex >

flex AdvancedDataGrid兑现checkbox全选

2012-12-20 
flex AdvancedDataGrid实现checkbox全选还有几个好的例子的地址:http://www.ityangba.com/thread-126-1-1.

flex AdvancedDataGrid实现checkbox全选
还有几个好的例子的地址:http://www.ityangba.com/thread-126-1-1.html,可以与下面的对比参照。
--------------------------------

http://blog.yotuo.net/post/2009/11/DataGrid-CheckBoxColumn.html
最近在尝试着用Flex做个文件按管理的工具,在文件列表中为了操作方便,想到了再列表控件DataGird中添加一个含有复选框的列,在表头的复选框可以实现全选功能,但DataGird自身并无此功能。参照网上的相关资料,总算折腾出来了,现把源码奉上,希望对需要的朋友有点帮助,不足之处也请高手指点.
最终的CheckBoxColumn包包含四个相关的类文件,分别是:
1、CenterCheckBox.as:通过重写CheckBox基类来实现复选框的居中显示;

2、CheckBoxColumn.as:继承自DataGridColumn的一个新类,为了实现需要,增添了几个新属性;

3、CheckBoxHeaderRenderer.as:继承自CenterCheckBox 类,用于DataGrid表头的复选框,实现全选功能;

4、CheckBoxItemRenderer.as:继承自CenterCheckBox 类,用于DataGrid表中的数据行;

各文件源码如下:
1.CenterCheckBox.as


2、通过代码动态调用:

PS:该组件要求在数据源中存在属性isSelected(Boolean类型,用来记录当前行是否被选中)属性,这样就限制了程序的通用性,试了很多方法都未很好解决,希望有办法解决的朋友给以指点。
示例运行效果:


1 楼 star245 2012-02-18   怎么取得选中的复选框的值哦,新手求教中,,,, 2 楼 zengxiangshun 2012-03-01   star245 写道怎么取得选中的复选框的值哦,新手求教中,,,,
for(var i:int=0; i<customerModel.managersPage.pageData.length; i++)
{
if(customerModel.managersPage.pageData[i].dgSelected.toString()=="true"){
var userV:UserVO = new UserVO();
userV.userId = customerModel.managersPage.pageData[i].userId;
result.push(userV);
}
}
customerModel.managerNewAdds = result;
你看看这个代码 应该明白了 if里面就是取你选择的值 3 楼 javaeeha 2012-09-25   请问你这是AdvancedDataGrid吗 不要到处去抄了别人的 不加思索的就说是自己倒腾的

热点排行