Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

TTreeView [D6, WinXP]


DJ! ©   (2003-01-02 19:04:00) 

begin

Здравствуйте уважаемые МАСТЕРА!
Есть небольшой вопрос, на который я надеюсь получить ответ.

В TTreeView к 1-му TTreeNode добавляются Child"ы - полные пути к каким либо папкам.
(Они разбиваются на имена отдельных папок и добавляются по уровням,
т.е. как в стандартном диалоге обзора папки).
Как сделать, что - бы при добавлении путей "C:\Program Files\WinAmp" и "C:\Program Files\Delphi6"
была только одна ветвь "C:\Program Files\" с двумя Child"ами "WinAmp" и "Delphi6" ?

Заранее благодарен всем, кто поможет :p

end.


Геннадий   (2003-01-02 21:31:00) [1]

У тебя "на входе" путь. (C:\Windows\ICQ) Тебе его нужно разбить на подкаталоги. Для этого используй array of String (динамический). В ячейку [0] пиши первый подкатолог. (Windows) В [1] - второй - ICQ. Затем, когда ты путь "раскидал" в ячейки массива - в цикле проверяй с [0] существование ветки с нужным именем. Если нет - создавай. Если есть - добавляй child.

Вопросы?


Rouse_   (2003-01-02 19:46:00) [2]

А если каждый раз Root переопределять :))
Или написать такой код?

I:= Length(NewPath);
if NewPath[I] = "/" then Delete(NewPath, I, 1);
Dec(I);
while NewPath[I] <> "/" do Dec[I];
Delete(NewPath, 1, I);
//и теперь добавляй NewPath


Желаю успехов


TTCustomDelphiMaster   (2003-01-02 19:33:00) [3]

А что ExtractFileName и ExtractFileDir не работают?


DJ!   (2003-01-02 19:19:00) [4]

Ну а если путей много и разных и не известна их ROOT ?


Rouse_   (2003-01-02 19:13:00) [5]

Элементарный парсинг.
к примеру:

Root:= "C:\Program Files\";
NewPath := "C:\Program Files\Winamp";
Delete(NewPath, 1, Length(Root));
//и теперь добавляй NewPath


Желаю успехов


Наверх

Титульная страница Поиск, карта сайта Написать письмо