Una opción:
Código Delphi
[-]
procedure DeleteRow1(StringGrid: TStringGrid; ARow: Integer);
var
i: Integer;
begin
with StringGrid do
begin
for i := ARow to RowCount - 2 do
Rows[i].Assign(Rows[i + 1]);
RowCount := RowCount - 1
end;
end;
y otra opción:
Código Delphi
[-]
procedure DeleteRow2(StringGrid: TStringGrid; ARow: Integer);
begin
with THackStringGrid(StringGrid) do
DeleteRow(ARow);
end;
Te faltará (en el segundo caso) esta definición:
Código Delphi
[-]
THackStringGrid = class(TStringGrid);