Rootkit1987
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору weber2008 Цитата: Вот так додумался, но как сделать иерархию недогоняю. | Пожалуйста: Код: RootFolder = Dialog.FolderBrowse("Choose Root Folder:", _SourceFolder); if RootFolder == "CANCEL" then Application.ExitScript(); end Tree.RemoveNode("Tree1", "0"); sListIndex = "#"; tFolders = Folder.Find(RootFolder, "*", true, nil); for i = 1, Table.Count(tFolders) do sParentFolder = Folder.GetParent(tFolders[i]) if sParentFolder == RootFolder then n = 0 repeat n = n + 1 nIndex = String.Find(sListIndex, "#"..n.."#", 1, false); until nIndex == -1 sIndex = Tree.InsertNode("Tree1", n, {Text = Folder.GetEndFolder(tFolders[i]), Data = tFolders[i]}); sListIndex = sListIndex..n.."#" else sIndex = Tree.FindNodeByData("Tree1", "0", sParentFolder); n = 0 repeat n = n + 1 nIndex = String.Find(sListIndex, "#"..sIndex.."."..n.."#", 1, false); until nIndex == -1 sIndex = Tree.InsertNode("Tree1", sIndex.."."..n, {Text = Folder.GetEndFolder(tFolders[i]), Data = tFolders[i]}); sListIndex = sListIndex..sIndex.."."..n.."#" end end | Код несовершенен (катал на быструю руку), но работает. Можно упростить | Всего записей: 98 | Зарегистр. 24-06-2013 | Отправлено: 14:16 13-08-2020 | Исправлено: Rootkit1987, 14:20 13-08-2020 |
|