Я заполняю текстовое поле программно и прокручиваюсь до maxScrollH по мере добавления нового текста, чтобы пользователь мог видеть ход текста. Это работает нормально, пока я не нажму TextField, который устанавливает scrollH обратно в 0 и помещает курсор в текст в эквивалентной позиции.
textField.setSelection( text.length, text.length ); //sets the caretIndex/selection to the end
textField.scrollH = textField.maxScrollH; //scrolls to max
это код, который я использую для прокрутки при обновлении свойства textField text. Я попытался добавить слушателя к событию click в textField, которое работает определенным образом, но вызывает видимый скачок.
override protected function createChildren() : void
{
super.createChildren();
textField.addEventListener(MouseEvent.CLICK, handleTextFieldClick, false, 0, true);
}
protected function handleTextFieldClick(event:MouseEvent):void
{
textField.scrollH = currentTextFieldScrollPosition; //stored scrollH value
trace(textField.scrollH);
}
Я предполагаю, что в каком-то месте, которое я не могу найти, вычисляется или сохраняется позиция прокрутки.