procedure TOptionfrm.AutoWidth(dxTreeList: TdxTreeList);
var
i: integer;
str: string;
node: TdxTreelistnode;
label ok;
begin
for i := 0 to dxTreeList.ColumnCount - 1 do
begin
str := dxTreeList.Columns[i].Caption;
node := dxTreeList.TopNode;
while true do
begin
if length(str) < length(node.Strings[i]) then
str := node.Strings[i];
if node.HasChildren then
node := node.GetFirstChild
else
begin
while node.IsLast do
if node.Level = 0 then
goto ok
else
node := node.Parent;
node := node.GetNextSibling;
end;
end;
ok:dxtreelist1.Columns[i].Width := length(str) *8;// dxtreelist1.Columns[i].Font.Size;
end;
end;
(出处:www.delphibbs.com)
