Вниз
Скачать: CL | DM;

Обрезать строку   Найти похожие ветки 

← →
ttt   (2013-02-25 21:05) [0]

Добрый вечер.

Например, необходимо ограничить "Ваня пошел гулять и не вернулся" 20 пикселями, чтобы получилось "Ваня пошел гулять...".
Есть ли для этого стандартные методы?


← →
Dimka Maslov ©   (2013-02-25 21:08) [1]

while (Canvas.TextWidth(S) > 20) and (Length(S) > 0) do SetLength(S, Length(S)-1)


← →
ttt   (2013-02-25 21:09) [2]


> while (Canvas.TextWidth(S) > 20) and (Length(S) > 0) do
> SetLength(S, Length(S)-1)

Мой запасной вариант :) Мне кажется прорисовывать таким методом элементы таблицы не совсем корректно :)


← →
ttt   (2013-02-25 21:14) [3]

Хотя, можно было бы просто нарисовать поверх невлезающего обрезанного текста в конце три точки. НО! Вдруг есть стандартный метод подобно DT_END_ELLIPSIS.


← →
Игорь Шевченко ©   (2013-02-25 21:20) [4]

ttt   (25.02.13 21:14) [3]

В EhLib, по-моему, такое обрезание в гриде сделано. Исходники доступны, можно посмотреть


← →
clickmaker ©   (2013-02-25 21:47) [5]

> Вдруг есть стандартный метод подобно DT_END_ELLIPSIS

А кто мешает использовать DrawText?


← →
ttt   (2013-02-25 22:23) [6]


> А кто мешает использовать DrawText?

Дык, не нашел флага, делающего это.


← →
clickmaker ©   (2013-02-25 22:46) [7]

> не нашел флага, делающего это

а в [3] что?


← →
Dimka Maslov ©   (2013-02-25 22:57) [8]


> Мой запасной вариант :) Мне кажется прорисовывать таким
> методом элементы таблицы не совсем корректно


Допустим стандартный метод есть. Как он будет работать? Сначала определит, сколько символов влезает в заданную область, потом обрежет и выведедет. Что здесь не совсем корректного?


← →
ttt   (2013-02-25 23:02) [9]


> а в [3] что?


Млё. И доверяй потом переводам, которые добавляют в конец тире.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.004 c
1-1317893740
Бездомный
2011-10-06 13:35
2013.12.08
Чтобы локальные переменные в функциях


15-1371587402
Юрий
2013-06-19 00:30
2013.12.08
С днем рождения ! 19 июня 2013 среда


2-1361811947
ttt
2013-02-25 21:05
2013.12.08
Обрезать строку


15-1371414603
Юрий
2013-06-17 00:30
2013.12.08
С днем рождения ! 17 июня 2013 понедельник


15-1369665361
Rouse_
2013-05-27 18:36
2013.12.08
Пакет статей по перехвату.




   Наверх