java – 如何将长字符串合并到JLabel中

前端之家收集整理的这篇文章主要介绍了java – 如何将长字符串合并到JLabel中前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
标题所示:我需要将JLabel安装到JFrame中,但是JLabel中的文本太长,所以我需要添加一些换行符. JLabel中的文本是从在线 XML文件获得的,因此我不能将文本更改为包含换行符.

代码从XML文件提取数据

@H_301_4@Element element = (Element)nodes1.item(i); String vær = getElementValue(element,"body"); String v = vær.replaceAll("<.*>","" ); String forecast = "Vær: " + v;

在这种情况下,字符串我想添加一些linebreaks到字符串v.String v包含从xml文件中解析的数据.字符串预测将返回并设置为JLabel的文本.

只要问一些事情是不清楚的,谢谢提前!

解决方法

我建议使用JTextArea代替,并打开包装.在JLabel中执行此操作的唯一方法就是设置换行符< br />,如果您不知道该文本,您将无法正常工作(至少不容易).

JTextArea更加灵活.默认情况下,它看起来是不同的,但你可以围绕一些显示属性来使它看起来像一个JL​​abel.

一个简单的修改使用示例摘自How to Use Text Areas教程 –

@H_301_4@public class JTextAreaDemo { public static void main(String[] args) { SwingUtilities.invokeLater(new Runnable() { @Override public void run() { createAndShowGUI(); } }); } private static void createAndShowGUI(){ final JFrame frame = new JFrame("JTextArea Demo"); frame.setDefaultCloSEOperation(JFrame.EXIT_ON_CLOSE); final JPanel panel = new JPanel(); JTextArea textArea = new JTextArea( "If there is anything the nonconformist hates worse " + "than a conformist,it's another nonconformist who " + "doesn't conform to the prevailing standard of nonconformity.",6,20); textArea.setFont(new Font("Serif",Font.ITALIC,16)); textArea.setLineWrap(true); textArea.setWrapStyleWord(true); textArea.setOpaque(false); textArea.setEditable(false); panel.add(textArea); frame.add(panel); frame.pack(); frame.setVisible(true); } }

猜你在找的Java相关文章