прокрутка jtextarea - PullRequest
       16

прокрутка jtextarea

1 голос
/ 21 декабря 2011

Я использую jtextarea, и он динамически заполняется во время выполнения моего приложения (например, журналы). Я хочу удалить автопрокрутку вертикальной полосы прокрутки, я имею в виду, что текст добавляется в поле, а позиция каретки не меняется (она меняется только в том случае, еслиЯ его тащил вручную).Как я могу это сделать?Я пытался scrollPane.getHorizontalScrollBar().setAutoscrolls(false), но это не помогло.

Ответы [ 2 ]

2 голосов
/ 21 декабря 2011

Сама по себе текстовая область не прокручивается;у вас должно быть что-то в вашем коде, чтобы это произошло.

Обычный подход заключается в установке каретки в конце документа (плюс caret.setUpdatePolicy(DefaultCaret.ALWAYS_UPDATE);, когда вы находитесь на Java 5; см. ТекстПрокрутка области )

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

setAutoscrolls() не действует в этом случае, поскольку он используется только в том случае, еслиВы перетаскиваете выделенный текст, и мышь выходит за пределы компонента, плюс назначение этого свойства - другое (если true, события искусственной мыши будут генерироваться, пока мышь находится за пределами компонента).

0 голосов
/ 21 декабря 2011

Если я правильно понимаю ваш вопрос, вы можете использовать что-то вроде этого:

myTextArea.setCaretPosition(myTextArea.getDocument().getLength() - 1);
...