HBasic писал(а):Как определить количество нодов самого верхнего уровня TreeView?
Т.е. именно количество нодов только самого верхнего уровня без их потомков.
SSecurity писал(а):HBasic писал(а):Как определить количество нодов самого верхнего уровня TreeView?
Т.е. именно количество нодов только самого верхнего уровня без их потомков.
можно через свойство FullPath определить ... если в нем нет "\" тогда верхний уровень.
Dim I As Long, J As Byte, A As Single, CNT As Integer
For I = 1 To 3000
TV.Nodes.Add , , "A" & I, "T" & I
For J = 1 To 10
TV.Nodes.Add "A" & I, tvwChild, , "1111"
Next J
Next I
A = Timer
CNT = 0
For I = 1 To CDec("&h" & Hex(TV.Nodes.Count))
CNT = CNT + IIf(InStr(1, TV.Nodes(I).FullPath, "\") = 0, 1, 0)
Next I
Debug.Print Timer - A, CNT
SSecurity писал(а):либо один раз пройтись посчитать а потом при добавлении/удалении каждого вносить изменения в соответсвующий параметр который контролирует число нодов верхнего уровня
Хакер писал(а):Если же 6-ую, то это это вообще не оригинальный TreeView. Это самозванец.
Объектная модель у них одинаковая.
Хакер писал(а):Тот TreeView, с которым ты работаешь, это не оригинальный TreeView, а обёртка над оригинальным стандартным. Если ты юзаешь 5-ую версию Common Controls.
Если же 6-ую, то это это вообще не оригинальный TreeView. Это самозванец.
Хех, я и сам догадывался, что нет.
pronto писал(а):Про свойтво Tag я всегда был в курсе, и даже использовал его, но мне (что поделать!) никогда не приходило в голову писАть туда большие объемы данных.
что в Tag (или Key) можно писать не сами данные, а указатель на них
Сейчас этот форум просматривают: PetalBot, Yandex-бот и гости: 15