Treeview

 
0
 
Delphi, Kylix and Pascal
ava
DIMONSOFT | 12.03.2005, 21:11

function SrNodeTree(pTreeNode: TTreeNode; var sRuta: string): string;
begin
sRuta := pTreeNode.Text + '/' + sRuta;
if pTreeNode.Level = 0 then Result := sRuta
else
Result := SrNodeTree(pTreeNode.Parent, sRuta);
end;

Пример:
- Дельфи
- WinAPI
работа с....
После выполнения кода получаю следующее:
Дельфи/WinAPI/работа с..../
Вопрос: Надо чтобі работало так:
Дельфи/WinAPI/работа с....
Ответы (3)
ava
NiJazz | 12.03.2005, 21:41 #
DIMONSOFT

Delete(sRute, length(sRuta), 1);

Точный синтаксис не помню, но суть та же.
ava
Alex | 12.03.2005, 23:43 #

function GetTVPath(Node: TTreeNode; Separator: Char): String;
// Возвращает полный путь к элементу в TreeView
// Separator - разделитель
begin
Result:= '';
if Node = nil then exit;
while Node <> nil do begin
Result:= Node.Text + Separator + Result;
Node:= Node.Parent;
end;
if Length(Result) <> 0 then Delete(Result, Length(Result), 1);
end;
// -----------------------------------------------------------------
procedure GetListTVNode(SelNode: TTreeNode; List: tStrings; Separator: Char);
// Возвращает список подчиненных элементов к SelNode
// Separator - разделитель
procedure ScanNodes(Node: TTreeNode; path: String);
begin
Node:= Node.GetFirstChild;
while Node <> nil do begin
if Node.HasChildren then
ScanNodes(Node, path + Separator + Node.Text)
else
List.Add( path + Separator + Node.Text);
Node:= Node.getNextSibling;
end;
end;

begin
List.BeginUpdate;
try
List.Clear;
if SelNode = nil then Exit;
if SelNode.HasChildren then
ScanNodes(SelNode, SelNode.Text)
else
List.Add(SelNode.Text);
finally
List.EndUpdate;
end;
end;
ava
Alex | 12.03.2005, 23:43 #
Перенесено из раздела Дельфи
Зарегистрируйтесь или войдите, чтобы написать.
Фирма дня
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Участники
  Alex   NiJazz   DIMONSOFT
advanced
Отправить