JTextArea 专为处理纯文本而设计,这意味着对单个字符应用颜色更改会影响整个文档。但是,使用 JTextPane 或 JEditorPane 可以进行更精细的控制,使您能够对文本的不同部分进行颜色编码。
要实现此文本自定义:
JTextPane tPane = new JTextPane();
appendToPane(tPane, "Your Text", Color.YOUR_COLOR);
private void appendToPane(JTextPane tp, String msg, Color c) { StyleContext sc = StyleContext.getDefaultStyleContext(); AttributeSet aset = sc.addAttribute(SimpleAttributeSet.EMPTY, StyleConstants.Foreground, c); // Additional styling options (e.g., font, alignment): aset = sc.addAttribute(aset, StyleConstants.FontFamily, "Your Font"); aset = sc.addAttribute(aset, StyleConstants.Alignment, StyleConstants.ALIGN_JUSTIFIED); int len = tp.getDocument().getLength(); tp.setCaretPosition(len); tp.setCharacterAttributes(aset, false); tp.replaceSelection(msg); }
使用 JTextPane,您现在可以轻松地以不同的方式突出显示文本的特定部分。颜色。这种增强的文本自定义可以使您的代码更易于阅读和理解。
以上是如何在 Java Swing 应用程序中对文本进行颜色编码?的详细内容。更多信息请关注PHP中文网其他相关文章!