SpellChecker的Swing界面

时间:2013-06-05 15:18:34

标签: java swing jtextarea spell-checking

我正在使用Lucene 3.6库来构建一个拼写检查引擎。

此外,Highlight()类用于突出显示拼写错误的文本。

现在想将它集成到jTextField中。想要拼写检查 实时运行,以便当用户键入单词或文本时, 拼写检查引擎检查单词或文本,如果是,则加下划线 拼写错误。

当我从

传递一串文字时,lucene拼写检查引擎和HighLight类工作正常
jTextArea.getText().

但看起来在循环中使用此方法调用不是一个好主意。

任何有任何想法的机构。

1 个答案:

答案 0 :(得分:0)

使用简单的KeyListener,您可以非常无缝地完成此操作。您正在撰写有关JTextField和JTextArea的文章,这个方法适用于这两种方法。

someTextField.addKeyListener(new KeyAdapter() {
    @Override
    public void keyTyped(KeyEvent e) {
        // do your spell-check
        mySpellCheckMethod(someTextField.getText() + e.getKeyChar());
    }
});

在someTextField将其添加到文本字符串之前,此侦听器获取KeyEvent,因此您必须手动将当前键入的键添加到要检查的字符串中。 但是,你不能强调,italize(是一个单词吗?)或加粗TextField中文本的特定部分。它全有或全无。