[flex] flex全选改变背景色

faming521 2012-09-27
小弟刚接触flex,需要实现分页及全选,隔行变色,选中改变背景色功能,分页现在能实现了,但是全选改变背景色,未能实现,全选采用的的itemRenderer,但是始终不能改变背景色,整个自定义组件不能很好的协调工作,求各位指导,有类似的组件代码就更感激不尽了!!!
maxliz 2012-09-28
Itemrender中的dataprovider和视图绑定的,你可以dp中的每个对象,加个字段selected,来标明是否被选中,而在itemrenderer中,添加个Bindable的selected的set方法,通过flex的失效机制,调用invalidateProperties();invalidateDisplayList();方法,然后重写commitProperties方法,来change itemrenderer的state
darrenzhu 2012-09-28
背景颜色应该通过改变行的背景颜色来实现,并且把你的ItemRenderer组件的背景颜色的Apha设为0,即透明,这样,看到的就是行的背景颜色,通过改变行背景颜色才能让rollover和select操作时的颜色显示正常,如果你完全由自己的ItemRenderer来控制背景颜色,那你很快就会发行,选择一行,以及rollover等操作会有问题,如何实现自定义行背景颜色的DataGrid,可以参考http://darrenzhu.iteye.com/admin/blogs/1682198, 如何实现自定义的ItemRender你可以参考http://darrenzhu.iteye.com/admin/blogs/1682185
faming521 2012-09-29
maxliz 写道
Itemrender中的dataprovider和视图绑定的,你可以dp中的每个对象,加个字段selected,来标明是否被选中,而在itemrenderer中,添加个Bindable的selected的set方法,通过flex的失效机制,调用invalidateProperties();invalidateDisplayList();方法,然后重写commitProperties方法,来change itemrenderer的state

感谢哈,我再试试!
faming521 2012-09-29
darrenzhu 写道
背景颜色应该通过改变行的背景颜色来实现,并且把你的ItemRenderer组件的背景颜色的Apha设为0,即透明,这样,看到的就是行的背景颜色,通过改变行背景颜色才能让rollover和select操作时的颜色显示正常,如果你完全由自己的ItemRenderer来控制背景颜色,那你很快就会发行,选择一行,以及rollover等操作会有问题,如何实现自定义行背景颜色的DataGrid,可以参考http://darrenzhu.iteye.com/admin/blogs/1682198, 如何实现自定义的ItemRender你可以参考http://darrenzhu.iteye.com/admin/blogs/1682185

谢谢指导,我再试试!
Global site tag (gtag.js) - Google Analytics