Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.01;
Скачать: [xml.tar.bz2];




Вниз

Уважаемые Мастера, помогите с 


KMM   (2002-03-05 11:07) [0]

Может кто-нибудь имел дело с компонентом vgDBTreeView ?
Вопрос в следующем:
есть таблица ID - код (Integer)
Name - наименование
Parent - код родителя (Integer)

У vgDBTreeView ставлю свойства DataFieldId=ID
DataFieldParentId=Parent
DataFieldText=Name
Дерево отображается, все замечательно. Но как теперь встав курсором на соответствующий "лист" этого дерева получить значения ID и Parent? (Ну допустим вывести их в Edit"s)

К сожалению с "деревьями" дела не имел, если можно, то поподробнее. Если никто не работал с данным компонентом, то
наведите на путь истинный исходя из каких-то общих соображений.

Заранее благодарю.



Nest   (2002-03-05 12:25) [1]

Передо мной сичас встала проблема с организацией дерева.
Рассматриваю разные способы организации таблиц вообще и интерфейса.
Если не сложно, напиши что это за компонент, если можно - намыль.
Постараюсь разобраться.
Вообще если есть ищё какая инфа,наработки по деревьям - может поделишься?
Вобщем намыль компонент, попробую разобраться.



KMM   (2002-03-06 11:48) [2]

Неужели никто не знает?



Lusha   (2002-03-06 14:40) [3]

Ну, почему же никто...
Работал я с ним... Сейчас под рукой его vgDBTreeView нет... посмотрю дома исходники и завтра отвечу, ОК?



KMM   (2002-03-06 15:07) [4]

> Lusha Буду очень признателен.



Nest   (2002-03-06 15:40) [5]

2KMM
Получил, но несмог поковыряться.
Не устанавливается - под Д3 никак?
"File not found VG.INC"



vuk   (2002-03-06 15:59) [6]

Пара статей про организацию деревьев в БД.
http://sdm.viptop.ru/articles/sqltrees.html
http://rdbms.narod.ru/article/tree/index.html



Lusha   (2002-03-07 09:44) [7]

У меня это делается следующим образом. В обработчике OnGetImageIndex следующий код...

with TvgDBTreeView(Sender) do
begin
if not Assigned(Selected) then Exit;
if Node = Selected then
begin
if DataSource.DataSet.BookmarkValid(TvgDBTreeNode(Node).BookMark) then
DataSource.DataSet.GotoBookMark(TvgDBTreeNode(Node).BookMark);
end;
end;

Собственно идея TvgDBTreeView состоит в том, что в процессе формирования дерева в TvgDBTreeNode сохраняются закладки на записи БД по которым были сформированы ветви... идея хорошая, вот только реализовывать ее в качестве компонента, на мой взгляд, лишнее... Получается компонент привязанный к конкретной структуре БД, а проект завязывается на библиотеку и на ее автора (который в дальнейшем может отказаться от сопровождения библиотеки или попросить денежки)

Фактически, TTreeView с TTreeNode, содержащими закладки на записи БД в свойстве Data - это то необходимое и достаточное, для построения дерева по любой структуре БД. Именно на использование в своей работе TTreeView я и перешел...


P.S. Если возникнут вопросы, обращайтесь на мыло. Помогу (чем смогу) ;)

Удачи




Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.01;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.73 MB
Время: 0.037 c
14-304            Виктор55              2002-02-17 22:20  2002.04.01  
Быстродействие компьютера при обычном использовании


6-256             Yuraz                 2002-01-17 18:30  2002.04.01  
Есть кусок HTML кода, хотелось бы хоть примитивно преобразовать его в наглядную страницу


7-336             Dorixe                2001-12-26 16:00  2002.04.01  
SetLocaleInfo


1-188             madburro              2002-03-18 23:15  2002.04.01  
Print


14-308            UGH|B1ADE             2002-02-17 20:42  2002.04.01  
Хелп плиззз !SOS!