setText
заменит содержимое базового Document
текстом, который вы передадите. Для обновления текстовой панели вам необходимо добавить текст непосредственно в документ
JTextPane tp = new JTextPane();
tp.insertIcon(new ImageIcon("mySuperAwesomePictureSomewhere.jpg"));
try {
Document doc = tp.getDocument();
doc.insertString(doc.getLength(), "\nTruer words were never spoken", null);
} catch (BadLocationException ex) {
ex.printStackTrace();
}
add(new JScrollPane(tp));
Очевидно, что если вы хотите вставить текст перед изображением, стоило бы отметить текущую длину Document
сначала и вставить новый текст в этот момент, после того как вы вставили изображение, в зависимости от ваших потребностей
Вы также можете потратить некоторое время и взглянуть на Использование текстовых компонентов , чтобы лучше понять, как работает текстовый API