*Tente esta aqui eu uso e ela configura as colunas de acordo com os dados
exibidos.*


procedure TfrmForm.AjustaColunas(DBGrid: TDBGrid);
var
  i, j: integer;
  TotWidth : integer;
  VarWidth : integer;
begin
  TotWidth := 0;
  VarWidth := 0;
  dados.TABELA.DisableControls;
  for i := 0 to -1 + DBGrid.Columns.Count do
  begin
  dados.TABELA.First;
    for j := 0 to dados.TABELA.RecordCount do
      begin
        TotWidth := Canvas.TextWidth(DBGrid.Columns[i].Field.Text);
          if TotWidth > VarWidth then
             DBGrid.Columns[i].Width := 8 + TotWidth;
          if VarWidth < TotWidth then
             VarWidth := TotWidth;
        dados.TABELA.Next;
      end;
  end;
  dados.TABELA.First;
  dados.TABELA.EnableControls;
end;


[As partes desta mensagem que não continham texto foram removidas]

Responder a