设置单个字符串的字体?

时间:2014-03-13 22:10:16

标签: java string swing fonts jtextarea

所以,我的程序中有一个JTextArea,我在其中添加了一些文本。 我试图只添加一个附加的字符串粗体,而不是将JTextArea中的所有文本都加粗。编辑字符串而不将其添加到JLabel(我不喜欢这样做)之类的东西似乎不是一种方法,至少不是我能找到的方法。

任何人都知道如何解决这个问题?

感谢您的时间。

2 个答案:

答案 0 :(得分:3)

最佳解决方法:不要使用JTextArea,这是一个可以轻松显示简单单个文本文本的组件。而是使用一个更健壮的文本组件,如JEditorPane或JTextPane。请看一下教程:

答案 1 :(得分:1)

使用JTextPane而不是JTextArea。通过在此组件中嵌入文本作为html,您可以更自由地设置文本样式。见这个例子:

JTextPane myTextPane = new JTextPane();
myTextPane.setContentType("text/html"); 
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("<html>");
stringBuilder.append("<b>bold text </b>");
stringBuilder.append("normal text");
stringBuilder.append("</html>");


myTextPane.setText(stringBuilder.toString());