所以,我的程序中有一个JTextArea,我在其中添加了一些文本。 我试图只添加一个附加的字符串粗体,而不是将JTextArea中的所有文本都加粗。编辑字符串而不将其添加到JLabel(我不喜欢这样做)之类的东西似乎不是一种方法,至少不是我能找到的方法。
任何人都知道如何解决这个问题?
感谢您的时间。
答案 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());