我查了TTreeView的源文件,发现这样可以解决:
var
Style: Integer;
begin
Style := GetWindowLong(TreeView1.Handle, GWL_STYLE);
if not UseStyle then Style := Style and not TVS_SINGLEEXPAND
//UseStyle控制是否AutoExpand,设为false的话节点不会自动收缩。
else Style := Style or TVS_SINGLEEXPAND;
SetWindowLong(TreeView1.Handle, GWL_STYLE, Style);
end;
试试看行不行。(注意要在use中加入CommCtrl单元)