Flex Datagrid如何改变单行字体的颜色 5

用FlexdDatagrid的时候遇到一点问题,不知道如何改变某一行的字体颜色,百度很久也未果,是字体颜色不是背景颜色,希望有什么比较简便的重写Datagrid的解决方案... 用Flexd Datagrid的时候遇到一点问题,不知道如何改变某一行的字体颜色,百度很久也未果,是字体颜色不是背景颜色,希望有什么比较简便的重写Datagrid 的解决方案。现在用的是mx包的Datagrid 展开
 我来答
苍龙de链
2013-08-26 · TA获得超过4985个赞
知道小有建树答主
回答量:604
采纳率:100%
帮助的人:619万
展开全部
代码如下,新建一个as文件,粘贴进去,再调用一下rowColorFunction属性就行:

package UIControl
{
import mx.controls.DataGrid;
import mx.controls.*;

import flash.display.Shape;

import mx.core.FlexShape;

import flash.display.Graphics;

import flash.display.Sprite;

import mx.rpc.events.AbstractEvent;

import mx.collections.ArrayCollection;

import flash.events.Event;

public class RowDataGrid extends DataGrid
{
private var _rowColorFunction:Function;
public function RowDataGrid()
{
super();
}
public function set rowColorFunction(f:Function):void
{

this._rowColorFunction = f;
}
public function get rowColorFunction():Function
{

return this._rowColorFunction;
}

override protected function drawRowBackground(s:Sprite,rowIndex:int,y:Number, height:Number, color:uint, dataIndex:int):void
{

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);

}

}

}
雪鹰翔天
2013-08-26 · TA获得超过165个赞
知道小有建树答主
回答量:416
采纳率:0%
帮助的人:314万
展开全部
可以重写datagrid列渲染器,在渲染器里处理赋值时根据某一字段的值来变颜色。这是常用方法。
更多追问追答
追问
能详细点么。itemRender么
追答
对,新写itemRender。见 http://zhidao.baidu.com/question/584437773.html?#replyask-1465281202  我的回答。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式