如果拼写错误,如何格式化jTextArea()中的一个单词?

时间:2012-03-21 08:12:29

标签: arrays swing formatting spell-checking jtextarea

我正在编写文本编辑器,最后一步是创建一个简单的拼写检查程序。我已经设法弄清楚如何找到不正确的单词,但现在我想格式化这些单词,以便它们被显示为不正确的示例加下划线或突出显示它们。

如何将jtextarea()中的一个单词格式化为其他单词?

public void Spell_Check()
    {

    String[] english = new String[26871];
    String[] text_words = ((JTextArea) TabPane.getSelectedComponent()).getText().split(" "); 

     int count_words = 0;
     try {
        BufferedReader br = new BufferedReader(new FileReader("english.txt"));


        String lineFromFile = "";


       for(int i = 0; (lineFromFile = br.readLine()) != null; i++)
       {
         if(text_words[i] != lineFromFile )
         {

          text_words[i].setAttributes(51,  7, false);   
         }
       }

    } catch (Exception e) {
    }
}

1 个答案:

答案 0 :(得分:1)

查看问题Delayed text color change in Swing text field,其中给出了如何在JTextField中实现此目的的答案。由于答案使用JTextComponent上提供的方法,您也可以将其用于JTextArea

更好的例子是Swing tutorial,更具体地说是TextFieldDemo几乎完全符合您的要求