当前位置: 代码网 > it编程>网页制作>Flex > Flex 自定义DataGrid实现根据条目某一属性值改变背景颜色

Flex 自定义DataGrid实现根据条目某一属性值改变背景颜色

2024年05月15日 Flex 我要评论
自定义拓展的datagrid(as类)代码如下:package czgh.components { import flash.display.sprite; import mx.controls.da

自定义拓展的datagrid(as类)代码如下:

package czgh.components 
{ 
import flash.display.sprite; 

import mx.controls.datagrid; 
import mx.core.uicomponent; 

public class optionaldatagrid extends datagrid 
{ 
private var _rowcolorfunction:function; 
private var _customed:boolean; 
private var _customercolor:uint=0; 
public function optionaldatagrid() 
{ 
super(); 
} 

override protected function drawrowbackground(s:sprite, rowindex:int, y:number, height:number, color:uint, dataindex:int):void 
{ 
color=0xffffff; 

if(this._rowcolorfunction != null) 
{ 
if (dataindex < this.dataprovider.length) 
{ 
var item:object=this.dataprovider.getitemat(dataindex);//设定颜色 
color=this._rowcolorfunction.call(this, item, color); 
} 
} 



super.drawrowbackground(s, rowindex, y, height, color, dataindex); 
} 

override protected function drawheaderbackground(headerbg:uicomponent):void 
{ 
headerbg.setstyle("bordervisible","false"); 
} 



public function set rowcolorfunction(rowcolorfunction:function):void 
{ 
this._rowcolorfunction=rowcolorfunction; 
} 

public function get rowcolorfunction():function 
{ 
return this._rowcolorfunction; 
} 


} 
}

在mxml中实现自定义的datagrid并使用 其rowcolorfunction方法

//通过比较每条记录中datafield为act和stand的大小决定该条记录的背景颜色 
private function setcustomcolor(item:object, color:uint):uint 
{ 
if (number(item["act"])<number(item["stand"])) 
{ 
return 0x7bbfea; 
} 

return color; 
}
(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com