我使用了JButton,当点击按钮时,运行这些代码:
StyledDocument doc = (StyledDocument) textPane.getDocument();
MutableAttributeSet attr = new SimpleAttributeSet();
int p0=textPane.getSelectionStart();
int p1=textPane.getSelectionEnd();
if(p0!=p1){
StyleConstants.setForeground(attr, Color.RED);
doc.setCharacterAttributes(p0,p1-p0, attr,false);
}
textPane.getInputAttributes().addAttributes(attr);
Run Code Online (Sandbox Code Playgroud)
从p0到p1的字符确实变为红色
但我输入的字符仍然是黑色,而不是红色:(
例子:
我键入"12345"并选择"234".
新的5还是黑色的.

但如果我输入"1234"并选择"234".
新的5将是红色的.
即使没有"textPane.getInputAttributes().addAttributes(attr);"
