Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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
14-1090357361
Piter
2004-07-21 01:02
2004.08.08
Как грамотно подправить VCL?


14-1090505644
menart
2004-07-22 18:14
2004.08.08
У кого каие мысли?


11-1078407548
SkyNet
2004-03-04 16:39
2004.08.08
mck


1-1090508016
Lin7
2004-07-22 18:53
2004.08.08
А можно весь код проги в try - except запихнуть?


14-1090394927
mm0
2004-07-21 11:28
2004.08.08
Установка Win98 поверх XP.Помогит горе-ламерам,plz





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский