Проверить, развернут ли или свернут полностью TTreeView

Материал из DRKB

Проверить, развернут ли или свернут полностью TTreeView[править | править код]

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;
  end
  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;
  end
  else
    Result := False
end;


Source: http://delphiworld.narod.ru/
ID: 01123