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

Вниз

вырезать строку по длинне с вырезом в центре   Найти похожие ветки 

 
Gu   (2011-11-28 15:28) [0]

нет ли в дельфях какой готовой фунции (или алгоритма), которая бы делала это

Function MyFunc(path:string;PathCut:integer):string;

например
при path="c:\какойто длинный путь" и PathCut=например 14

возвращала бы

"c:\ка\...\путь"

а при PathCut>=length(str) возвращала path без обрезки?

т.е. обрезала бы путь по указанной длине с вставкой ... или \...\ в центре


 
Ega23 ©   (2011-11-28 15:33) [1]

http://docwiki.embarcadero.com/VCL/en/SysUtils.ExtractShortPathName
+ See Also
Поройся, может чё найдёшь.


 
Омлет ©   (2011-11-28 15:39) [2]

Капуть мозга.


 
clickmaker ©   (2011-11-28 15:41) [3]

DrawText DT_PATH_ELLIPSIS


 
Gu   (2011-11-28 15:43) [4]

ExtractShortPathName это не то, это короткий путь из длинного.
а мне надо - отображение пути при копировании например, если он в окно не влазиет, где путь показан. вроде far или dos navigator так пути показывали при копировании или др. файловых операциях, когда они очень длинные.


 
Gu   (2011-11-28 15:45) [5]

DT_PATH_ELLIPSIS это то что надо было бы, если бы результат возвращала string, а не рисовала.


 
clickmaker ©   (2011-11-28 15:48) [6]

> если бы результат возвращала string

DT_MODIFYSTRING


 
И. Павел ©   (2011-11-28 15:48) [7]

Как-то так:
function cut(s: string; size: integer): string;
begin
 if length(s) > size then
 begin
   size := size — 3;
   Delete(s, size div 2 + size mod 2 + 1, length(s) — size);
   Insert("...", s, size div 2 + size mod 2 + 1);
 end;
 result := s;
end;


 
Anatoly Podgoretsky ©   (2011-11-28 15:56) [8]

> Gu  (28.11.2011 15:45:05)  [5]

А этот путь и есть рисунок, а не строка.


 
RWolf ©   (2011-11-28 16:01) [9]

ну и зачем нужна эта строка с многоточиями?
в БД в поле таблицы вписывать, что ли?


 
Gu   (2011-11-28 16:10) [10]


> И. Павел

спасибо, как вариант.

нашел, даже лучше: PathCompactPathEx, то, что надо.



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

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

Наверх




Память: 0.48 MB
Время: 0.01 c
2-1321906467
lars
2011-11-22 00:14
2012.03.04
String Grid Подскажите, пожалуйста, как получить номера выбранных


15-1320993358
Andy BitOff
2011-11-11 10:35
2012.03.04
Ну что, ждем? =)


4-1254901304
Delins
2009-10-07 11:41
2012.03.04
Серийный номер Диска (не Тома)


2-1322436833
Vyacheslav
2011-11-28 03:33
2012.03.04
Как функцией процедурой вернуть результат динамический массив?


2-1322210432
LDV
2011-11-25 12:40
2012.03.04
установить курсор в датасете после insert