【发布时间】:2012-06-09 20:04:13
【问题描述】:
我有一个 JTextArea,我想在用户将文本粘贴到 JtextArea 时进行监听。具体来说,我想做以下事情:
获取他们粘贴的文本,删除空格,并将 JTextArea 文本替换为没有空格的已编辑文本(而不是用户粘贴的原始文本)。
我如何使用 DocumentListener 来做到这一点,并避免 java.lang.UnsupportedOperationException: Not supported yet.,这是由以下代码引起的:
public void insertUpdate(DocumentEvent de) {
final String replace = jTextArea1.getText().replaceAll("\\s","");
SwingUtilities.invokeLater(new Runnable() {
public void run() {
jTextArea1.setText(replace);
}
});
}
【问题讨论】:
-
该异常的堆栈跟踪是什么?这似乎应该工作。除非禁止在事件处理程序中重新设置文本,在这种情况下,您可以尝试调用
SwingUtilities.invokeLater()。 -
我试过 SwingUtilities.invokeLater (见更新的问题)。错误仍然被抛出。
-
你能发布堆栈跟踪吗?目前尚不清楚(对我而言)是什么导致了错误。
标签: java swing jtextarea insert-update documentlistener