我正在使用Lucene 3.6库来构建一个拼写检查引擎 .
此外,Highlight()类用于突出显示拼写错误的文本 .
现在想将它集成到jTextField中 . 希望拼写检查器实时运行,以便当用户键入单词或文本时,拼写检查器引擎会检查单词或文本,并在拼写错误时为文本加下划线 .
当我传递一串文本时,lucene拼写检查引擎和HighLight类工作正常
jTextArea.getText().
但看起来在循环中使用此方法调用将不是一个好主意 .
有任何想法的任何机构 .
您可以使用简单的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中的特定文本 . 这是全有或全无 .
1 回答
您可以使用简单的KeyListener无缝地完成此操作 . 您正在撰写有关JTextField和JTextArea的文章,并且此方法适用于这两种方法 .
在someTextField将其添加到文本字符串之前,此侦听器获取KeyEvent,因此您必须手动将当前键入的键添加到要检查的字符串中 . 但是,你不能强调,italize(是一个单词?)或粗体显示TextField中的特定文本 . 这是全有或全无 .