标签: java swing jtextpane
我正在编写一个vt100模拟器,我正在使用带有DefaultStyledDocument的JTextPane来显示格式化文本。现在我想实现退格,所以我需要能够删除最后一个字符。
我尝试了以下内容:
doc.remove(doc.getEndPosition().getOffset()-1, doc.getEndPosition().getOffset());
但我一直收到'javax.swing.text.BadLocationException:无效删除'
应该怎么做?
答案 0 :(得分:2)
您使用的API错误。最后一个参数是要移除的字符数,在您的情况下应为1.
以下是Document.remove(int, int)的API。
Document.remove(int, int)