Форум: "Основная";
Текущий архив: 2004.08.08;
Скачать: [xml.tar.bz2];
ВнизПрорисовка в TTreeView Найти похожие ветки
← →
Vilux © (2004-07-26 10:05) [0]В дерево добавляется много элементов и тормозит это дело. Как бы мне отключить прорисовку элементов, пока дерево не заполнится, а потом включить?
← →
KSergey © (2004-07-26 10:07) [1]Items.BeginUpdate/EndUpdate
← →
Vlad © (2004-07-26 10:08) [2]
> Vilux © (26.07.04 10:05)
Не заполняй сразу все дерево, а только "верхние" узлы. Остальные заполняй динамически, при раскрытии узла, т.е. нажатии на (+)
← →
KSergey © (2004-07-26 10:12) [3]> [2] Vlad © (26.07.04 10:08)
Само по себе дерево заполняется достаточно быстро (с учетом [1])
Ваш совет актуален только в случае, когда сами данные для заполнения доставать сравнительно долго.
← →
Vilux © (2004-07-26 10:59) [4]Спасибо, так наверное и сделаю, буду динамически заполнять.
← →
Vilux © (2004-07-26 12:19) [5]Возник еще такой вопрос, как мне принудительно нарисовать значок плюсика у итема, чтобы он мог раскрываться?
← →
KSergey © (2004-07-26 12:21) [6]Подозреваю, что надо в нем создать произвольный дочерний итем, но как-то указать, что это не реальные данные, что их надо еще закачать
← →
Vilux © (2004-07-26 12:25) [7]Как-то это некрасиво получается... неужели нет более легкого пути?
← →
MetalFan © (2004-07-26 12:38) [8]
property HasChildren: Boolean;
Description
HasChildren is True if the node has subnodes, or False if the node has no subnodes. If ShowButtons of the tree view is True, and HasChildren is True, a plus (+) button will appear to the left of the node when it is collapsed, and a minus (-) button will appear when the node is expanded.
Note: If a node has no children, setting HasChildren to True will show a (+) plus button, but will not add any child nodes and the node cannot be expanded.
усе понятно?
← →
MetalFan © (2004-07-26 12:39) [9]а, ну да! это св-во у TTreeNode
← →
Vilux © (2004-07-26 13:02) [10]Я использую TElTree, так там нельзя менять значение HasChildern :( только можно читать
← →
savva © (2004-07-26 13:08) [11]а подглядеть исходники VCL коран не дозволяет?
← →
savva © (2004-07-26 13:12) [12]2 минуты работы
procedure SetHasChildren(Handle : THandle;Value: Boolean);
var
Item: TTVItem;
begin
with Item do
begin
mask := TVIF_CHILDREN;
hItem := ItemId;
cChildren := Ord(Value);
end;
TreeView_SetItem(Handle, Item);
end;
вызовSetHasChildren(YourNode.Handle, true)
- покажет крестик
← →
savva © (2004-07-26 13:18) [13]единственно немогу тебе подсказать по поводу ItemId - потому как не видел тех специфичных компонентов, которые ты используешь
← →
Экспериментатор (2004-07-26 14:43) [14]Поищи TVirtualTreeView
оно намного быстрее
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.08.08;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.034 c