Страница 1 из 1

Проблемы с деревом

Добавлено: 15 апр 2004, 20:55
Аля
Здравствуйте!
Вот первый раз взялась за деревья и видимо что-то где-то упустила...
Интерфейс просто вылетает про попытке развернуть ветку :(
Есть такая таблица в памяти:
Table struct mtvid
(
wRec : word ,
wOwner : word,
name : string
)
WITH INDEX (
mtvid01=wRec,
mtvid02=wOwner);

create view VW
var curOwner : word;
from mtvid
where (( curOwner == mtvid.wOwner ));

Ну и несчастное дерево:

tree treeV '' ( ,, sci147EnEscTree ) ;
table mtvid;
fields
mtvid.wrec 'Код':[5], protect;
mtvid.name 'Наименование' ('Наименование',, ) : [ 40 ], protecT ;
end;
handleevent
cmTreeTop : { curOwner := 0; }
cmTreeDown : { curOwner := mtvid.wrec;}
cmTreeUp : { curOwner := mtvid.wOwner; } cmTreeNodeType : {
if (mtvid.wOwner<>0) then
TreeSetNodeType (treeV,ntfText);
else TreeSetNodeType (treeV,ntfOpen);}
end;
end;

Может у кого есть пример или доки - буду очень благодарна!

Re: Проблемы с деревом

Добавлено: 16 апр 2004, 08:43
Goblin
в обработчике событий
добавь
cmInit:
{
curOwner := 0;
}
cmTreeNeedOwner
{
TreeJumpToRecord(treeV,mtvid.wOwner);
}
замени на
cmTreeNodeType
{
If(TreeIsTerminal(treeV)) TreeSetNodeType(treeV,ntfText);
}