Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.06.18;
Скачать: CL | DM;

Вниз

Сортировка TreeView   Найти похожие ветки 

 
wsih ©   (2006-05-29 01:04) [0]

Здравствуйте. У каждого узла дерева data указывает на Record Для каждого уровня узла свой рекорд...
Как мне их сортировать по определенным значениям из Record?
нужно сортировать отдельно Level0 по своим значениям Level1 - по своим (внутри родителя который Level0). Cтавлю
SortType:=stData;
А что хотя бы приблизительно в моем случае писать в onCompare?


 
wsih ©   (2006-05-29 01:36) [1]

ок. Разобрался:
procedure TForm1.TreeCompare(Sender: TObject; Node1, Node2: TTreeNode;
 Data: Integer; var Compare: Integer);
var
p1,p2:Pointer;
begin
p1:=Node1.Data;
p2:=Node2.Data;
if node1.Level=1 then begin
  if LayerPointer(p1).depth > LayerPointer(p2).depth then compare:=1 else compare:= -1;
end;
Label4.Caption:=Node1.Text;
Label5.Caption:=node2.Text;
end;

Следующая проблема - сравнение происходит только при создании очередного узла. Суть:  - создается узел. поле по которому происходит сортировка - по дефолту =0 -узел отправляется в самый верх ветки. Потом пользователь изменяет значение и узел отсортировывается только при следуещем добавлении узла этого же уровня. (а сего может и не быть)
А как вызывать эту сортировку при нажатии кнопки?


 
wsih ©   (2006-05-29 01:59) [2]

Ладушки. Все спят уже наверное.
Выкручиваюсь из ситуации так: при  изминении значения, по которому происходит сортировка нажимается кнопка. в обработке этой кнопки среди прочего добавил процедуру, которая создает новую запись и ветку (в это время происходит сортировка) а потом это все благополучно удаляю.
Пинайте....


 
Сергей М. ©   (2006-05-29 08:42) [3]

см. TTreeView.CustomSort()



Страницы: 1 вся ветка

Текущий архив: 2006.06.18;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.06 c
15-1148294507
Карелин Артем
2006-05-22 14:41
2006.06.18
Нужна инфа по численности насления нас. пунктов.


2-1148891531
DiGer
2006-05-29 12:32
2006.06.18
симплекс-метод


8-1137350265
Udaff
2006-01-15 21:37
2006.06.18
вопрос по Word у


3-1145378453
linx
2006-04-18 20:40
2006.06.18
"cannot attach to password database"


4-1143014316
EgorovAlex
2006-03-22 10:58
2006.06.18
Как улучшить поиск в LDAP? Есть такая конструкция, которая