PDA

Просмотр полной версии : Индекс первого видимого символа


AlexLucas
19.09.2012, 19:10
Есть текст поле tf, где multiline = true.
Перехватываю TextEvent.TEXT_INPUT и пытаюсь определить индекс первого видимого символа, ведь текста может быть больше чем поместится в текст поле и он проскролиться, и индекс первого элемента может будет не 0.

Пытаюсь использовать

tf.addEventListener(TextEvent.TEXT_INPUT, charPos);

private function charPos(e:TextEvent) {
trace(' char pos : ' + (tf.getCharIndexAtPoint(1,10))); //1 и 10 чтобы доставало до первого
//символа по х и у
}



Но дело в том что мне выводит позицию предыдущего первого символа, т.е. если я вставлю текст в чистое текст поле, который не поместится целиком и проскролится, то мне выведет '0', что не соответствует действительности, и уже когда в след. раз поймает событие, выдаст мне верную позицию опять же для предыдущего "первого" символа, итд итп.
Чувствую что я это делаю как-то через "одно место", может есть метод получше? И который работает :)

caseyryan
19.09.2012, 19:13
Это можно решить использованием не TextEvent.TEXT_INPUT, а KeyboardEvent.KEY_UP
т.е. проверять введенный текст сразу после того, как он уже введен

Первый случай всегда будет выдавать предыдущий символ