| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Как перебрать все узлы VirtualTreeView ? |
| Автор: Erazer 12.6.2008, 11:18 |
| Есть дерево символизирующее файловую систему,каждый узел папка или файл. Нужно перебрать все ветви и составить список путей к файлам. Есть зацепка,файлы не имеют дочерних узлов соответственно их можно идентифицировать,знаю как перебрать все узлы,но не знаю как перебрать непосредственно каждую из ветвей. Т.е. папка "C:\My Music\tags\temp\" выглядит как "C:"+"My Music"+"tags"+"temp"+имена файлов. нужно собрать все это в строку и перейти на след ветку, вопрос в том как это сделать... говорят Path реализует то что нужно,но нигде не вижу описания или примера работы с ней |
| Автор: MetalFan 12.6.2008, 13:22 |
| GetFirst+GetNext? |
| Автор: Erazer 12.6.2008, 13:54 | ||
Так нечестно!!!Ты знал!!!!! Ты Знал!!!!
Такой код дает следующие результаты "c:\","c:\my music\","c:\my music\6chan.ogg\","c:\my music\6chan.wma\" Теперь думаю как с этим работать, допустим если определять файл это или еще нет чрез наличие расширения, то в случае наличия в названии папки точки,"sdg.sdgfdg786" она воспринимается как файл с расширением :( а проверять через directoryexists не совсем нормально скажем так.. |
| Автор: Poseidon 12.6.2008, 15:58 |
| А как у тебя дерево заполняется? Может на этапе заполнения указывать ветке что там файл/папка? |
| Автор: MetalFan 12.6.2008, 19:41 | ||||
что за бредовый код обхода? обход дерева VT выглядит проще:
при заполнении дерева ставь флаг, файл это или папка. зачем потом мудрить то? |
| Автор: Erazer 12.6.2008, 20:38 | ||||
Добавлено через 11 минут и 30 секунд странная задумка разрешать менять репутацию только после 100 постов Добавлено через 13 минут и 18 секунд
|
| Автор: aktuba 12.6.2008, 23:26 | ||
Уууу... Как все запущено... |
| Автор: Erazer 13.6.2008, 13:18 |
Добавлено @ 13:21 я в принципе переосмыслил немного свою вчерашнюю задумку,вспомнил про ExcludeTrailingBackSlash, ExtractFilename, но естественно с удовольствием почитаю альтернативные варианты варианты |
| Автор: Erazer 16.6.2008, 05:37 | ||
на практике это выглядит так
|
| Автор: Erazer 17.6.2008, 16:50 |
я просто добавил поле в котором если это файл храню полный путь к нему |