Есть массив объектов и элемент текстового поля класса JTextArea. Необходимо вывести в этот элемент несколько длинных предложений, состоящих из моих комментариев и строчек Swing (так, чтобы при отображении элемента в поле уже был текст). Желательно, чтобы каждое предложение отображалось с новой строчки.
Пробовал циклом через setText(), но он тогда отображаются только последняя выведенная строка. Пробовал засунуть все предложения в ArrayList, а потом привести к String, но тогда в результате элементы массива отображаются с запятыми и квадратными скобками. Просто засунуть все предложения в одну строку тоже не выходит - превышение размера строки. Как быть?
Не до конца понятно что именно у Вас не получается, вот пример того, что (возможно) Вам нужно, если что уточните что не так:
import javax.swing.*;
import java.util.Arrays;
import java.util.List;
public class TextTest {
public static void main(String[] args) {
List<String> list = Arrays.asList("Мама мыла раму.", "Долго и скучала.", "Вечер уж настал");
SwingUtilities.invokeLater(() ->
{
StringBuilder stringBuilder = new StringBuilder();
for (String s : list) {
stringBuilder.append(s).append("\n");
}
JTextArea textArea = new JTextArea(stringBuilder.toString());
JFrame frame = new JFrame("_________");
frame.add(new JScrollPane(textArea));
frame.setSize(1000, 600);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.setVisible(true);
});
}
}
Весь смысл в том, чтоб текст подготовить заранее.
Можно использовать метод append
textArea.append("Любой текст");
Тогда строка будет добавляться к уже существующему тексту в JTextArea.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости