|
|
Наступает при сравнении двух узлов при сортировке дерева.
Синтаксис
function OnCompare(
| Sender, | Node1, | Node2, | Data, | Compare
| );
|
Параметры
|
Параметр
| Тип
| Описание
|
Sender
| TTreeView
| дескриптор компонента TTreeView
|
Node1
| TTreeNode
| дескриптор 1-го сравниваемого узла
|
Node2
| TTreeNode
| дескриптор 2-го сравниваемого узла
|
Data
| Number
| параметр Data собственной функции сортировки
|
Compare
| TNumber
| результат сравнения узлов Node1 и Node2 (см. ниже)
|
|
Параметр Compare
|
Значение
| Описание
|
<0
| узел 1 меньше узла 2
|
=0
| узлы равны
|
>0
| узел 1 больше узла 2
|
|
// Главная форма frm=new TForm(); frm.Caption="JS+ - событие компонента TTreeView OnCompare"; frm.Width =450; frm.Height=300;
// Строка состояния stb=new TStatusBar(frm); stb.SimpleText=" Обратная сортировка дерева";
// TreeView trv=new TTreeView(frm); trv.BorderStyle=bsSingle; trv.Left=trv.Top=10; trv.Width=frm.ClientWidth-trv.Left*2; trv.Height=stb.Top-trv.Top*2; trv.OnCompare=trv_Compare;
// Заполнение дерева for (i=1;i<=5;i++) { tn1=new TTreeNode(trv); tn1.Text="Узел "+i; for (j=1;j<=i;j++) { tn2=new TTreeNode(tn1); tn2.Text="Узел "+i+"-"+j; } }
trv.SortType=stText; trv.SetFocus(); frm.ShowModal();
// Обработчик события OnCompare function trv_Compare(trv,tn1,tn2,data,Compare) { Compare.Value=-tn1.Text.localeCompare(tn2.Text); }
Примечание
При установке результата сравнения узлов обработчик события должен установить свойство Value параметра Compare.
Совместимость
C++ Builder/Delphi
|
JS+ | Руководство пользователя
|
|
|
|
|
|