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

Вниз

ShellTreeView, ShellListView, имя директории и оптимизация кода   Найти похожие ветки 

 
User   (2008-07-14 10:34) [0]

Для того чтобы узнать текущее имя папки, выделенное в ShellTreeView (без начала = короткое) и использую такое безобразие:

var
 p, l: word;
 s: string;
begin
 l:= Length(ShellTreeView1.Path);  // в принципе не обязательно ...
 p:= Length(ExtractFileDir(ShellTreeView1.Path))+2;
 s:= Copy(ShellTreeView1.Path, p, l); // требуемое имя ...

при этом мне все равно, что находится в ShellListView.

Есть ли более разумное решение этой задачи? Благодарю ...


 
KilkennyCat ©   (2008-07-14 10:58) [1]

s:= Copy(ShellTreeView1.Path, Length(ExtractFileDir(ShellTreeView1.Path))+2, Length(ShellTreeView1.Path));
:)


 
KilkennyCat ©   (2008-07-14 10:59) [2]

на самом деле,ShellTreeView1.Path и взять только то, что до крайнего правого "\"


 
User   (2008-07-14 11:10) [3]


> s:= Copy(ShellTreeView1.Path, Length(ExtractFileDir(ShellTreeView1.
> Path))+2, Length(ShellTreeView1.Path));

примерно так и получается, развернутое "представление" - для наглядности ...

> на самом деле,ShellTreeView1.Path и взять только то, что
> до крайнего правого "\"

... была вообще "гениальная" идея - развернуть строку, при помощи Pos найти первый "\", отрезать до нее и обратно развернуть ... :-)


 
clickmaker ©   (2008-07-14 11:16) [4]

LastDelimiter()


 
User   (2008-07-14 11:29) [5]

Да, LastDelimiter() заменяет Length(ExtractFileDir(ShellTreeView1.Path)) ...



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

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

Наверх




Память: 0.47 MB
Время: 0.018 c
2-1215677312
Геннадий
2008-07-10 12:08
2008.08.17
Найти и удалить одинаковые вхождения в StringList ?


15-1214669750
Tommy
2008-06-28 20:15
2008.08.17
async professional


2-1215883915
4iVan
2008-07-12 21:31
2008.08.17
запустить процесс


2-1215629693
Al
2008-07-09 22:54
2008.08.17
Как сделать несколько Hotkey s?


15-1214612469
axis_of_evil
2008-06-28 04:21
2008.08.17
устройство USB не опознано