|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Jul 2004
Сообщений: 29
|
Глюки TextFormat, а возможно мои :) Пожалуйста помогите!
Друзья, помогите пожалуйста, какие-то странности с объектом TextFormat.
Идея проста: пишу метод, который обрезает строку в текстовом поле до нужного размера (исходя из установленного формата текста) и добавляет троеточие на конце. Код приложен. Проблема в том, что странным образом ведет себя объект TextFormat. Текст обрезается почему-то не по одной линии(запустите исходник пожалуйста), да и по размеру не дотягивает до указанного значени textRegion = 110. Манипуляции с переменной format, указывающей на объект TextFormat приводят к странным результатам... Вообщем посмотрите пожалуйста исходник, там все видно. |
|
|||||
Регистрация: Jul 2004
Сообщений: 29
|
Господа, неужели никто не поможет?
Удобный ведь метод, может пригодиться при разработке интерфейсов и форм. |
|
|||||
Регистрация: Jul 2004
Сообщений: 29
|
Вот и я говорю ХЗ...
Зависит, как я понял, не столько от шрифта, сколько от места объявления формата. Nox, BitSky, люди мудрые, может кто посмотрит? |
|
|||||
TextField.prototype.setEllipsisText = function(theText) {
var format = this.getTextFormat(); var theSubstring = theText; var textRegion = 180; for (var h = 0; h<theSubstring.length; h++) { if (format.getTextExtent(theSubstring.substr(0, h+1)).width>textRegion) { theSubstring = theText.substr(0, h)+"..."; break; } } this.text = theSubstring; }; Вообще код запутан дальше некуда А расстояние подгоняй вручную, т.к. getTextExtent, основываясь на параметрах форматирования, выдает лажу
__________________
За двумя зайцами погонишься - от егеря по морде получишь |
Часовой пояс GMT +4, время: 23:40. |
|
« Предыдущая тема | Следующая тема » |
|
|