Ограничение размера JTextArea размером его текста - PullRequest
3 голосов
/ 08 января 2012

У меня есть JTextArea фиксированного размера (300 x 33) с включенным переносом строк, который я добавил внутри JPanel.Всякий раз, когда кто-то печатает внутри него и проходит мимо последней видимой строки (в данном случае второй), текст продолжает отображаться вне области текстовой области и скрыт.

Есть ли в любом случае ограничение текста, вводимого внутриJTextArea для размера текстовой области, а не для количества содержащихся в ней символов (что делает его зависимым от разного пространства, занимаемого каждым символом разных шрифтов)?

Редактировать: я забыл упомянуть, чтоотсутствие фиксированного размера JTextArea и предоставление номеров строк и столбцов в конструкторе приведет к растяжению текстовой области и заполнению JPanel, ее удерживающей.Я полагаю, что это связано с тем, что макет панели является BoxLayout.

1 Ответ

7 голосов
/ 08 января 2012

Вы не должны фиксировать размер JTextArea.Вместо этого инициализируйте его, вызвав его конструктор с подходящими параметрами номера столбца и строки, и поместите его в JScrollPane, чтобы при увеличении текста вы не потеряли его.

...