怎么实现 当我往一个表(DBGrid1)中插入一条数据时,此数据显示为红色字体,只有修改厚变为默认或者 
   修改某条数据的字体颜色  根据这条数据中的 一个字段值

解决方案 »

  1.   

    注意下第一要求是新增记录的改色, 保存后变为正常可以用 DataSet.State = dsInsert 来确定
      

  2.   

    查看编辑器的状态,根据状态变颜色,
    if ClientDataSet.State in [dsinsert,dsedit] then begin
      Canvas.Brush.Color:=  clWhite;            //背景色
      Canvas.Font.Color:=  clRed;             //字体色
    end
    else begin
      Canvas.Brush.Color:=    ClWhite;
      Canvas.font.color :=    clGreen;
    end;