cxGrid根据条件改变文字颜色

今天在开发凯达ERP的时候,碰到了cxGrid关于根据取到的Cell值改变整行记录的Text颜色。

基本思路是:

1、用cxStyleRepository控件先设置几种不同的样式。

2、根据相关事件改变cxGrid的Text颜色

 

问题: 找不到哪个事件

 

解决问题:

如下例

在tcxGrid1DBTableView   的   CustomDrawCell   事件中写。  
  假如性别字段为   ColumnSex.   

  procedure   TForm1.cxGrid1DBTableView1CustomDrawCell(  
      Sender:   TcxCustomGridTableView;   ACanvas:   TcxCanvas;  
      AViewInfo:   TcxGridTableDataCellViewInfo;   var   ADone:   Boolean);  
      var   str:string;  
  begin  
      str:=trim(VarAsType(AViewInfo.GridRecord.DisplayTexts[ColumnSex.Index],   varString));  
      if   str='男'   then  
      begin  
            ACanvas.Canvas.Brush.Color   :=clred;  
            ACanvas.canvas.Font.Color   :=   clblack;  
      end  
      else   if   str='女'   then  
      begin  
        ACanvas.Canvas.Brush.Color   :=clgreen;  
        ACanvas.canvas.Font.Color   :=   clblack;  
      end;  
      if   AViewInfo.Selected   then  
      begin  
          ACanvas.Canvas.Font.Color   :=   clwhite;  
          ACanvas.Canvas.Brush.Color   :=clNavy   ;  
      end;  
  end;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值