Vamos a suponer lo siguiente:
las 4 columnas de los extremos tienen un ancho fijo de 100 pixeles, ¿ok?
Código Delphi
[-]Var
AnchoForma : Integer;
procedure TForm1.FormShow(Sender: TObject);
begin
AnchoForma := Form1.ClientWidth;
StringGrid1.ColWidths[2] := AnchoForma - 400;
end;
procedure TForm1.FormResize(Sender: TObject);
begin
AnchoForma := Form1.ClientWidth;
StringGrid1.ColWidths[2] := AnchoForma - 400;
end;
Espero haber entendido tu problema.
Saludos