procedure TForm1.DrawGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);
var i,j : integer;
begin
if (ACol=2) and (ARow=2) thenbegin
end;
end;
那位高手帮帮忙。。小弟是个新手。

解决方案 »

  1.   

    procedure TForm1.DrawGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
      Rect: TRect; State: TGridDrawState);
    var i,j : integer;
    begin
    if (ACol=2) and (ARow=2) then
        SetBkColor(dbgrid1.canvas.handle,clgreen)
    else
        setbkcolor(dbgrid1.canvas.handle,clwhite);
    dbgrid1.Canvas.TextRect(rect,0,0,field.AsString);
    dbgrid1.Canvas.Textout(rect.Left,rect.Top,field.AsString);
    end;
      

  2.   

    这样就行了procedure TForm1.DrawGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
      Rect: TRect; State: TGridDrawState);
    begin
        if (ACol=2) and (ARow=2) then
            with TDrawGrid(Sender).Canvas do
            begin
                Pen.Style := psClear;
                Brush.Color := clBlue;
                Rectangle(Rect);
            end;
    end;