我怎样才能使 JLabel 只显示第一行文本?

How can I make it so a JLabel only displays the first line of text?

看看这张照片:

这是一个高度不允许变化的 JLabel。但是,当文本太多无法容纳其给定大小时,它会尝试同时显示两行。我不想要这个,如何才能只显示 "in new" 之前的第一行?

为什么不成功 scrollable?这样您就可以保持首选大小,同时在需要时显示信息。您只需将 JLabel 放在 JScrollPane 中:

JScrollPane scroller = new JScrollPane(yourJLabel,
                                       JScrollPane.VERTICAL_SCROLLABAR_AS_NEEDED,
                                       JScrollPane.HORIZONTAL_SCROLLABAR_AS_NEEDED);

解决方案是不使用 html(即,在字符串内部使用 "<html>"),因为它是导致行在太长时扭曲的原因。所有粗体和等宽都必须在不使用 html.

的情况下完成