gpt4 book ai didi

java - 在 JTextArea 中显示样式内容

转载 作者:行者123 更新时间:2023-12-02 03:26:05 26 4
gpt4 key购买 nike

我想知道是否有一种方法可以在 JTextArea 中设置文本样式;

我必须插入文本行,每行文本都包含可能具有不同样式和内容类型的片段;内容类型将决定与其相关的分割可用的操作。

  • 我检查了 JTextPane 和 JEditorPane,发现它们太复杂、速度慢且不太适合我的需求。我想出的最佳解决方案是扩展 BasicTextUI 和 PlainDocument 类。

可以用其他方法吗?有什么提高性能的建议吗?谢谢。

最佳答案

I examined JTextPane and JEditorPane and found them too complicated

是的,这就是编程的工作方式。如果您想做更复杂的事情,那么您需要使用更高级的组件。

JTextArea 不支持样式文本,这就是它易于使用的原因。 JTextPane 确实支持样式文本,因此它“稍微”复杂一些。

一旦您创建了一些用于每组文本的样式,JTextPane 实际上并没有那么复杂。例如:

JText textPane = new JTextPane();
textPane.setText( "This is regular text"");
StyledDocument doc = textPane.getStyledDocument();

// Add some styled text

SimpleAttributeSet green = new SimpleAttributeSet();
StyleConstants.setForeground(green, Color.GREEN);

try
{
doc.insertString(doc.getLength(), "\nThis is green text.", green);
}
catch(Exception e) { System.out.println(e); }

关于java - 在 JTextArea 中显示样式内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38867724/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com