Надо написать процедуру авторазмера колонок (например по массиву процентов типа byte) и вызывать при OnResize того на чем лежит грид.
Примерно будет выглядеть так:
Код:
procedure AutoSizeDBGridColumns(DBGrid: TDBGrid; ColPercents: array of byte);
и вызывать:
Код:
AutoSizeDBGridColumns(DBGrid1, [20, 30, 50]);