Главная страница
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.021 c
2-1215802076
Jimmy
2008-07-11 22:47
2008.08.17
ScrollBar


2-1216032987
alexalex
2008-07-14 14:56
2008.08.17
печать


3-1204111803
Ega23
2008-02-27 14:30
2008.08.17
Не получается создать ADO-соединение с сервером


2-1216036098
small
2008-07-14 15:48
2008.08.17
локальная сеть


11-1192680509
homm
2007-10-18 08:08
2008.08.17
GRushControls 0.36