比如我要把money这一列设置为红色,还有网格中的每一个格子能作为对象使用吗?如果能的话怎么用?
          100
          100
          100
                 请高人指点啊

解决方案 »

  1.   

    在DBGrid的OnDrawColumnCell事件加入以下代码  if Column.FieldName = '列名' then
      begin
        (Sender as TDBGrid).Canvas.brush.Color := clRed;//Color
        (Sender as TDBGrid).DefaultDrawDataCell(Rect, Column.Field, State);
      end;
      

  2.   

    列的颜色已解决,非常感谢!!那某一格子中的颜色能设置吗?
    比如说
         if table1.fieldbyname('project').asstring='payout' then
               某一格子中的值的颜色为红色
      

  3.   

    DBGrid中的单元格不是对象,不要试图去访问
    如果要绘制单元格的颜色,需要判断字段值:
    if (Column.FieldName = '列名') and ((Sender as TDBGrid).DataSource.DataSet.FieldByName('project').AsString = 'payout') then
      begin
        (Sender as TDBGrid).Canvas.brush.Color := clRed;//Color
        (Sender as TDBGrid).DefaultDrawDataCell(Rect, Column.Field, State);
      end;
      

  4.   

    Cell的颜色也是可以改变的,其实鼠标单击的时候Cell的背景色已经变了被改为了clHighLight,不过怎么实现没有研究过.
      

  5.   

    楼上说的是把PAYOUT所在的格子设为红色?
      

  6.   

    对你格子的操作建议用stringgrid吧
      

  7.   


    同理。想要设置某一个格子的颜色,根据ACOL 和AROW。