|
|
|
JTextArea?
|
|||
|---|---|---|---|
|
#18+
Подскажите, пожалуйста, если я программно вывожу текст в JTextArea строчка за строчкой, типа журнал работы чего-то, как сделать программный скролинг текста чтобы всегда была видна последняя добавленная строка? У меня почему-то всегда видно только начало текста, а что бы посмотреть "что же там внизу" надо вручную крутить скролинг... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2007, 18:25:50 |
|
||
|
JTextArea?
|
|||
|---|---|---|---|
|
#18+
Попробуйте для начала установить курсор в конец текста , если не прокатит, то курить это . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2007, 18:40:34 |
|
||
|
JTextArea?
|
|||
|---|---|---|---|
|
#18+
Например так: Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.07.2007, 18:45:59 |
|
||
|
JTextArea?
|
|||
|---|---|---|---|
|
#18+
ДуремарПопробуйте для начала установить курсор в конец текста , если не прокатит, то курить это . Первое пробовал - не катит. Приложение валится при определении длины текста где-то на 200-тысячной строке вывода :)) А их может быть до полумиллиона. К тому же производительность падает во много раз. Со вторым никак не разберусь насчёт Rectangle - как мне его определить. Суть в том, что некая процедура производит массированную обработку базы данных и результат обработки каждой записи пишет в "журнал". Ход выполнения виден сразу же, а в случае чего можно copy-paste из JTextArea и на разборки. Собственно всё давно работает на AWT, но, как обычно, "дурная голова рукам покоя не даёт", захотелось переделать то же самое на Swing. И тут выяснилась одна особенность TextArea (AWT) - скролит текст самостоятельно, а JTextArea почему-то не хочет :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2007, 10:32:52 |
|
||
|
JTextArea?
|
|||
|---|---|---|---|
|
#18+
GarrickПриложение валится при определении длины текста где-то на 200-тысячной строке вывода :)) А их может быть до полумиллиона. Жесть.... Никогда с такими большими текстами не работал... Так что я вам, наверное, не советчик. Попробуйте все таки что нибудь вроде этого: Код: plaintext 1. 2. 3. Но все равно я сомневаюсь, что JTextArea будет корректно работать с такими огромными текстами. Может стоит обрезать текст? Или требуется, чтобы выводился обязательно весь текст? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2007, 11:38:15 |
|
||
|
JTextArea?
|
|||
|---|---|---|---|
|
#18+
ДуремарЖесть.... Никогда с такими большими текстами не работал... Так что я вам, наверное, не советчик. Попробуйте все таки что нибудь вроде этого: Код: plaintext 1. 2. 3. Большое спасибо, так конечно работает намного быстрее чем Код: plaintext Дуремар Но все равно я сомневаюсь, что JTextArea будет корректно работать с такими огромными текстами. Может стоит обрезать текст? Или требуется, чтобы выводился обязательно весь текст? А вот тут вы оказались правы. До конца он так и не дошел :(( на 450-тыс. обломился, наверное это ещё зависит от объёма ОЗУ, но у пользователей его ещё меньше будет. К сожалению, резать текст нежелательно, может быть переодически куда-то в текстовый файл сливать или какой-нибудь LOG. Будем ломать голову как свободное время появится, а пока всё замечально продолжает работать на AWT... вот и говорите после этого про "прогресс..." :)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2007, 15:37:06 |
|
||
|
JTextArea?
|
|||
|---|---|---|---|
|
#18+
В общем, вопрос разрешился. Оказыается, если писать в JTextArea (append) в отдельном потоке, то скролинг текста в окне производится сам собой, так же как и в AWT TextArea. Правда, в AWT TextArea для того же эффекта отдельный поток создавать нет необходимости. Глюк это или фича - не понятно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.07.2007, 17:16:33 |
|
||
|
|

start [/forum/search_topic.php?author=jarkloid&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
22ms |
get forum list: |
32ms |
get settings: |
23ms |
get forum list: |
33ms |
check forum access: |
8ms |
check topic access: |
8ms |
track hit: |
56ms |
get topic data: |
24ms |
get forum data: |
6ms |
get page messages: |
87ms |
get tp. blocked users: |
3ms |
| others: | 1646ms |
| total: | 1948ms |

| 0 / 0 |
