0

如何更改最新的记录颜色 dbgrid?

if (Sender as TDBGrid).DataSource.DataSet.RecNo = (Sender as TDBGrid)
  .DataSource.DataSet.RecordCount then
begin
  Canvas.Brush.Color := $00C66F71;
end;
(Sender as TDBGrid).DefaultDrawColumnCell(Rect, DataCol, Column, State);
4

1 回答 1

4

使用OnDrawColumnCell属性TDbGrid

procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
  if (Sender as TDBGrid).DataSource.DataSet.RecNo = (Sender as TDBGrid).DataSource.DataSet.RecordCount then
begin
  //change color of row    
  DBGrid1.Canvas.Brush.Color:=$00C66F71;
  DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;

要更改文本的颜色,请使用:

DBGrid1.Canvas.Font.Color:=clRed;
DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);

在您的代码中

Canvas.Brush.Color:=$00C66F71;

属于CanvasTFormCanvas属于TDbgrid

于 2015-05-22T11:32:59.183 回答