![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
работа с TTreeView, народ очень надо... [D6, Win2k]
SVM © (2002-06-16 01:18:00)Имеется файл B-дерева тип: file of TPage
TPage = record
Number: array[1..2*N] of integer;//какойто ключ
Ind: array[1..2*N] of integer;//его индекс в индексном фа
Sons: array[1..2*N+1] of integer;// указатели на индексы сын-ей
end;
Необходимо построить дерево с помощью компонента TTreeView...
Заранее благодарен...
З.Ы. Мне бы поскорее его сделать надо..
SVM (2002-06-16 21:36:00) [1]Все я сделал это Спасибо тебе MBo за помощь...
окнчательный вариант:
Procedure filltree(var F: TFileTree; node:ttreenode; Position: integer);
var
newnode:ttreenode;
i:integer;
page: TPage;
begin
if Position > FileSize(F)-1 then exit;
seek(F, Position);
read(F, Page);
NewNode := Viewer.TV.Items.AddChild(Node,IntToStr(Position));
inc(Position);
for i := 1 to NumberOfSons(page) do
begin
//проверка на несуществование сына
if page.Sons[i] = -1 then continue;
filltree(F, newnode, page.sons[i]);
end;
end;
MBo (2002-06-16 13:28:00) [2]Procedure filltree(tv:ttreeview; node:ttreenode; page:tpage);
var newnode:ttreenode;
i:integer;
begin
NewNode := TV.Items.AddChild(Node,page.caption);
for i := 0 to page.Count - 1 do
filltree(tv, newnode, page.sons[i]);
end;
вызов
filltree(Treeview1,nil,RootPage);
~Rand~ (2002-06-16 13:05:00) [3]Удалено модератором
GOOFFY (2002-06-16 10:44:00) [4]Удалено модератором
aus (2002-06-16 10:41:00) [5]А что TreeView должно отображать?
~Rand~ (2002-06-16 09:15:00) [6]Удалено модератором