在onPrintcolum的事件内加入如下代码:
var
Field: TField;
begin
Field := Table1.Fields[ColNo - 1];
if Field is TStringField then
Width := Field.Size * Canvas.TextWidth('W')
else
if Field is TDateTimeField then
Width := 15 * Canvas.TextWidth('W')
else
Width := 64;
FWidth:= Width;
在onbeforePrint内调用他