按条件控制dbgrid每一行的颜色(3种以上的颜色)

根据不同的字段值,在DBGrid1表格中不同行间显示红,蓝,绿三种颜色,可以在DBGrid1的OnDrawDataCell事件中加入这段代码:

procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
  DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin

  if   Query1.FieldByName('Red').AsString = 'A' then      //这是判断条件,显示红色
       DBGrid1.Canvas.Font.Color := clRed;
  if   Query1.FieldByName('Blue').AsString = 'B' then     //这是判断条件,显示蓝色
        DBGrid1.Canvas.Font.Color := clBlue;
  if   Query1.FieldByName('Green').AsString = 'C' then    //这是判断条件,显示绿色
       DBGrid1.Canvas.Font.Color := clGreen;
  ......
  DBGrid1.DefaultDrawColumnCell(Rect,DataCol,Column,State);    //最重要的是这一行代码[/b]   

end;

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值