зы возможно остались "лишние" переменные,т.к. код взял от своего старого проекта ,но главная задача - раскрашивание, работает норм.
Код:
var
...
Mrow,Mcol:integer;//глобальные
...
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
begin
if (((Acol=0)and(Mrow=Arow))or(Acol=Mcol))and((Arow=Mrow)or((Arow=0)and(MCol=Acol))) then
begin
//StringGrid1.Canvas.Brush.Color := clSkyBlue;
//StringGrid1.Canvas.FillRect(Rect);
StringGrid1.Canvas.Font.Color:=clRed;
StringGrid1.Canvas.TextOut(Rect.Left+2, Rect.Top+2, StringGrid1.Cells[ACol, ARow]);
end;
end;
////////////////
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
begin
Mcol:=Acol;
Mrow:=Arow;
form1.StringGrid1.Repaint;
end;