首页  编辑  

check if a TreeView is fully expanded or collapsed

Tags: /超级猛料/VCL/TreeView/   Date Created:

check if a TreeView is fully expanded or collapsed?

function IsTreeviewFullyExpanded(tv: TTreeview): Boolean;

var

 Node: TTreeNode;

begin

 Assert(Assigned(tv));

 if tv.Items.Count > 0 then

 begin

   Node   := tv.Items[0];

   Result := True;

   while Result and Assigned(Node) do

   begin

     Result := Node.Expanded or not Node.HasChildren;

     Node   := Node.GetNext;

   end; {While}

 end {If}

 else

   Result := False

end;

function IsTreeviewFullyCollapsed(tv: TTreeview): Boolean;

var

 Node: TTreeNode;

begin

 Assert(Assigned(tv));

 if tv.Items.Count > 0 then

 begin

   Node   := tv.Items[0];

   Result := True;

   while Result and Assigned(Node) do

   begin

     Result := not (Node.Expanded and Node.HasChildren);

     Node   := Node.GetNext;

   end; {While}

 end {If}

 else

   Result := False

end;