procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);
begin
  if gdSelected in State then
  begin
    StringGrid1.Canvas.Brush.Color := clRed;
    StringGrid1.Canvas.FillRect(Rect);
  end;
end;

解决方案 »

  1.   

    请问: taxi(菜得惊动毛主席) gdSelected具体是作什么用的?
      

  2.   

    procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
      Rect: TRect; State: TGridDrawState);
    begin
        StringGrid1.Canvas.Brush.Color := clRed;
        StringGrid1.Canvas.FillRect(Rect);
    end;
    应该也可以吧
      

  3.   

    还有就是为什么我的那个方法不行呢?
    Canvas不能直接画吗?
      

  4.   

    to: eulb(执子之手,与子偕老) 
    你的只是将所有的背景都变为clRed色
      

  5.   

    gdSelected就是那个单元格是选中的。