在JTextPane中取消选择所选文本

时间:2011-07-19 08:04:08

标签: java swing jtextpane

我有一个编辑器,我想在其中检查所选文本是否包含某些单词。如果它包含那些特定的单词,那么我需要取消选择用户所做的选择。有没有办法在JTextPane中做到这一点?

3 个答案:

答案 0 :(得分:7)

我不确定,但尝试这种方法。

textPane.setCaretPosition(start);

答案 1 :(得分:6)

int end = pane.getSelectionEnd();
pane.setSelectionStart(end);
pane.setSelectionEnd(end);

这将取消选择所选文本,并将插入符号保留在用户选择的任何内容的末尾。弹出JOptionPane告诉用户选择消失的原因可能会付出代价。

JOptionPane.showMessageDialog(
    null, 
    "Don't select swear words!", 
    "Net Nanny says..", 
    JOptionPane.ERROR_MESSAGE);

答案 2 :(得分:2)

文本选择是临时的和连续的。您不能在较大的选定文本字符串中间取消选择某些文本。

也许你在谈论突出显示。查看getHighlighter()的API。您可以添加/删除高光,并指定每个高光的开始/结束偏移。