zub писал(а):то садись, 2!
О это хуже, если топик стартер, так решает учебные задачи, то всё зависит от квалификации учителя:
1) если учитель хороший (как я например), то он скажет: Молодец - отличное неординарное решение, но можно было отсортировать, вот так "TreeView1.AlphaSort;".
2) А если учитель "злой и коварный" как Zub, то естественно он скажет "садись, 2", т.к. в алгоритме с использование стринг листа - это отступление от стандарта и поиск нестандартного решения. При этом, "злой и коварный" Zub не учитывает что, далеко не все компоненты умеют автоматически сортировать.
Но самое, главное, "злой и коварный" Zub, не заметил, что предложенную "злым и коварным" Zub-ом сортировку, художники, предлагали изначально, вот так: "
TreeView1.Items.SortTopLevelNodes();" и заметь-те, "злой и коварный" Zub, что описание:
procedure SortTopLevelNodes(SortProc: TTreeNodeCompare);, ведёт к вот такой развязке:
TTreeNodeCompare = function(Node1, Node2: TTreeNode): integer of object;, в смысле, ненужно выдумывать вот это, TForm1._CompareItems, когда мудрые художники предложили систему заложенную в TreeView1. Так что, садитесь "злой и коварный" Zub Вам, по Вашей-же методике: 2 - за невнимательность!