Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.13;
Скачать: CL | DM;

Вниз

TTreeView   Найти похожие ветки 

 
DJ!   (2003-01-02 19:04) [0]

begin

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

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

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

end.


 
Rouse_ ©   (2003-01-02 19:13) [1]

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

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


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


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

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


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

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


 
Rouse_ ©   (2003-01-02 19:46) [4]

А если каждый раз 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


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


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

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

Вопросы?



Страницы: 1 вся ветка

Текущий архив: 2003.01.13;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.161 c
1-37097
Goblinus
2003-01-04 01:38
2003.01.13
2 вопросика


1-37172
VirginKiller
2002-12-28 15:04
2003.01.13
XP Style - Как получить цвета?


1-37088
tboxer
2003-01-03 19:35
2003.01.13
string>pchar


1-37185
SI-riuss
2002-12-29 22:27
2003.01.13
Загрузка текстового файла


14-37336
gsu
2002-12-23 13:07
2003.01.13
Новый год