logo
Хабибуллин

Область ввода JTextArea

Класс JTextArea представляет многострочную область ввода с "плоским" текстом, в котором не меняются атрибуты шрифта. Для редактирования сложного текста удобнее

использовать JTextEditor или JTextPane.

В область ввода JTextArea не заложена возможность прокрутки большого текста. Если в этом есть необходимость, то область надо поместить в контейнер JScrollPane:

JTextArea ta = new JTextArea(5, 50); JScrollPane sp = new JScrollPane(ta); container.add(sp);

При этом следует задать размеры области — число строк и столбцов — как это сделано ранее, или предпочтительный размер JScrollPane.

По умолчанию слово, не поместившееся в видимой части строки, не переносится целиком на следующую строку. Эту возможность надо включить методом

setWrapStyleWord(true).

Аналогично, по умолчанию весь текст в области показывается в виде одной строки, выходящей за пределы окна. Если область ввода помещена в контейнер JScrollPane, то появляется горизонтальная линейка прокрутки. Чтобы строки не выходили за пределы окна, надо включить перенос строк методом setLineWrap(true).