0
我目前正在爲聊天室製作GUI。我已經做到了,用戶可以輸入文本,並可以選擇以JTextPane結尾的圖像。用戶按下輸入後,我想在另一個JTextPane中顯示它。有沒有簡單的方法來同時將文本和圖標從一個JTextPane移動到另一個JTextPane?我一次只設法移動其中一個。將文本和圖標從一個JTextPane移動到另一個JTextPane
我目前正在爲聊天室製作GUI。我已經做到了,用戶可以輸入文本,並可以選擇以JTextPane結尾的圖像。用戶按下輸入後,我想在另一個JTextPane中顯示它。有沒有簡單的方法來同時將文本和圖標從一個JTextPane移動到另一個JTextPane?我一次只設法移動其中一個。將文本和圖標從一個JTextPane移動到另一個JTextPane
您可以使用ElementIterator由元件上形成的JTextPane的StyledDocument中的元素進行復制,所有的造型,包括圖標:
static void copy(Document source,
Document dest) {
try {
dest.remove(0, dest.getLength());
ElementIterator iterator = new ElementIterator(source);
Element element;
while ((element = iterator.next()) != null) {
if (element.isLeaf()) {
int start = element.getStartOffset();
int end = element.getEndOffset();
String text = source.getText(start, end - start);
dest.insertString(dest.getLength(), text,
element.getAttributes());
}
}
} catch (BadLocationException e) {
throw new RuntimeException(e);
}
}
你的問題我不清楚。我不明白「移動」文本或圖標意味着什麼。什麼阻止你簡單地將相同的內容添加到另一個JTextPane中? – VGR
我在JTextPane上有一個用戶寫文本或添加圖像的keylistener。當用戶按Enter鍵時,我希望該JTextPane的內容移動到另一個JTextPane。我不確定如何從JTextPane獲取所有內容到另一個JTextPane,而不僅僅是文本或圖標本身。 – Bengan