Проверить, развернут ли или свернут полностью TTreeView
Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch
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;
Далее: Прокрутка TreeView, чтобы держать выделение посередине »»