| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > Стандартная функция усечения строки |
| Автор: Comm 24.2.2009, 20:39 |
| Добрый вечер Всем) Есть ли в Buildere стандартная функция усечения строки(если она не помещается на выделенный кусок канвы) с добавлением в конец строки многоточия ? Я конечно понимаю что это не трудно написать эту функцию самому,но это оставим на случай если стандартной похожей функции нет. Спасибо за внимание. |
| Автор: TiKKi 25.2.2009, 09:37 |
| Win32 API - http://msdn.microsoft.com/ru-ru/library/dd162498(en-us,VS.85).aspx |
| Автор: Alca 25.2.2009, 10:35 | ||
|
| Автор: dix75 25.2.2009, 11:07 | ||
| Alca, чето я не понял как она работает
эффекта ноль Ясно эта функция работает если есть обратные слэши в строке :( |
| Автор: Alca 25.2.2009, 11:13 | ||
| Делай руками камрад Что-то вроде этого:
|
| Автор: dix75 25.2.2009, 11:27 |
| Alca, это понятно, спасибо. а если просто строку обрезать, она не обязательно слэш содержит, а? |
| Автор: Alca 25.2.2009, 11:28 | ||
|
| Автор: dix75 25.2.2009, 11:45 |
| Alca, так это размер нуна знать |
| Автор: Alca 25.2.2009, 11:57 |
| Посмотри исходники MinimizeName. И сделай по аналогии. |
| Автор: dix75 25.2.2009, 11:58 | ||||
так работает
так нет
почему? |
| Автор: Alca 25.2.2009, 11:58 | ||
Подрихтуй под себя, вот исходник MinimizeName:
|
| Автор: dix75 25.2.2009, 12:08 |
| Alca, спасибо у меня своя версия есть. я думал что существует какая нить в билдере |
| Автор: TiKKi 25.2.2009, 13:22 | ||
Я Вам удивляюсь!
Это в качестве примера, чтобы было все нормально необходимо координаты подобрать. |
| Автор: Comm 25.2.2009, 13:22 |
| Всем спасибо,будем колдовать) |
| Автор: dix75 11.3.2009, 21:20 |
| TiKKi, Да ничерта она не работает |
| Автор: TiKKi 12.3.2009, 01:13 | ||
Работает! Вот из твоего ответа ничерта не понятно, что делаешь, что она не работает. |
| Автор: Comm 12.3.2009, 03:22 |
| А я пишу эту функцию со вставкой Ассемблера =) незнаю стоит ли оно того или нет...но все же. |
| Автор: dix75 12.3.2009, 09:18 |
| TiKKi, Она аботает если в тексте есть какие-либо символы дающие возможность переноса строки типа "много-много-много текста". Здесь обрезается строка без проблем. Но в тексте "8888888888888888888888888888888888888" ничего не произойдет. Добавлено через 1 минуту и 5 секунд Comm, Не понял. Тогда в твою функцию необходимо передавать строку в стиле С. Пример кода можно? |
| Автор: TiKKi 12.3.2009, 10:11 | ||||
Ошибаешься!
Кинь на форму статус бар, а это в OnResize формы вставь и поиграйся с размером формы. |
| Автор: Comm 12.3.2009, 13:37 | ||
dix75,ф-я. DrawText 100% работает
|