Java:如何更改文本区域中特定行或字符串行的颜色?

Kev*_*vin 6 java textarea foreground textcolor netbeans-6.9

我可以改变颜色的一种方法是使用setForground().但是,当有多行代码时,它会使所有内容变为绿色或黑色.有没有其他方法或任何方法来解决这个问题?谢谢!

int key = evt.getKeyCode();
    if (key == KeyEvent.VK_ENTER)
    {
       String tb1EnterdValue = tb1.getText().toString();
       if((tb1EnterdValue.equals("yes")) )
        {
            TextArea1.setForeground(Color.green);
    else
        {
              TextArea1.setForeground(Color.lightGray);
        }
       this.TextArea1.append(">"+tb1EnterdValue+newline);
       this.tb1.setText("");
Run Code Online (Sandbox Code Playgroud)

cam*_*ckr 3

我将使用带有“属性”(而不是 HTML)的 JTextPane 来更改文本颜色。Swing 教程中有关文本组件功能的部分有一个可帮助您入门的工作示例。

我以前尝试过 JTextPanes 但他们不允许我使用append() 方法

append() 方法只是一个方便的方法,允许您将文本添加到文档末尾。您也可以为 JTextPane 实现您自己的append() 方法。只需查看 JTextArea 的源代码并复制其append() 方法中的代码即可。