用SQL数据库,DBGrid表格有多个记录,
怎样用程序实现所操作记录行区别其他行(用颜色或字体格式)
~~                   谢谢

解决方案 »

  1.   

    procedure TForm_KPTTXXCX.DBGrid1DrawDataCell(Sender: TObject;
      const Rect: TRect; Field: TField; State: TGridDrawState);
    begin
      if dbgrid1.DataSource.DataSet.FieldByName('出库单编号').asstring = '合计' then
        DBGrid1.Canvas.Font.Color := clRed;
      if dbgrid1.DataSource.DataSet.FieldByName('出库单编号').asstring = '小计' then
        DBGrid1.Canvas.Font.Color := clRed;
      if dbgrid1.DataSource.DataSet.FieldByName('红蓝标记').asinteger = -1 then
        DBGrid1.Canvas.Font.Color := clRed;
    DBGrid.canvas.Brush.color:=clYellow;//行的颜色!
      DBGrid1.DefaultDrawDataCell(Rect, Field, State);
    end;
      

  2.   

    procedure TFormjibenxinxi.DBGrid1DrawDataCell(Sender: TObject;
      const Rect: TRect; Field: TField; State: TGridDrawState);
    begin
        if  adotable1.Fields[17].Value then //如果选中则~[17].Value=`1` 
          DBGrid1.Canvas.Font.Color := clRed;
          DBGrid1.canvas.Brush.color:=clYellow;//行的颜色!
          DBGrid1.DefaultDrawDataCell(Rect, Field, State);
    end;
    为什么不行啊?
    我是新手希望大家多多帮助 谢谢哦