java 透明jlabel_java-JLabel是否有“自动换行”属性?

我发现此解决方案是最简单的,并且在调整大小时也可以正常使用。 除了将文本包装在标签中外,还必须将标签放入尊重首选高度并将宽度设置为最大的容器中。 例如,您可以将标签放在BorderLayout的北部。

这是一个简单但完整的工作程序来说明这一点。 您可以根据需要调整框架的大小。 标签将占据整个宽度,高度将相应调整以包裹文本。 请注意,我所做的只是使用标签,并将标签放在BorderLayout的北部。

import javax.swing.JFrame;

import javax.swing.SwingUtilities;

import javax.swing.JPanel;

import javax.swing.JLabel;

import java.awt.BorderLayout;

import java.awt.Dimension;

public class LabelWrap {

public static JPanel createPanel() {

JLabel label = new JLabel();

label.setText(""

+ "

Lorem ipsum dolor sit amet, consectetur adipiscing elit.

"

+ "

Duis a tincidunt urna. Phasellus tristique interdum mauris, "

+ "ut vestibulum purus suscipit eget. Aenean massa elit, accumsan "

+ "non faucibus vel, dictum placerat urna. In bibendum est sagittis "

+ "urna iaculis quis sagittis velit commodo. Cum sociis natoque "

+ "penatibus et magnis dis parturient montes, nascetur ridiculus "

+ "mus. Nam quis lacus mauris. Phasellus sem libero, convallis "

+ "mattis sagittis vel, auctor eget ipsum. Vivamus molestie semper "

+ "adipiscing. In ac neque quis elit suscipit pharetra. Nulla at "

+ "orci a tortor consequat consequat vitae sit amet elit. Praesent "

+ "commodo lacus a magna mattis vehicula. Curabitur a hendrerit "

+ "risus. Aliquam accumsan lorem quis orci lobortis malesuada.

"

+ "

Proin quis viverra ligula. Donec pulvinar, dui id facilisis "

+ "vulputate, purus justo laoreet augue, a feugiat sapien dolor ut "

+ "nisi. Sed semper augue ac felis ultrices a rutrum dui suscipit. "

+ "Praesent et mauris non tellus gravida mollis. In hac habitasse "

+ "platea dictumst. Vestibulum ante ipsum primis in faucibus orci "

+ "luctus et ultrices posuere cubilia Curae; Vestibulum mattis, "

+ "tortor sed scelerisque laoreet, tellus neque consectetur lacus, "

+ "eget ultrices arcu mi sit amet arcu. Nam gravida, nulla interdum "

+ "interdum gravida, elit velit malesuada arcu, nec aliquam lectus "

+ "velit ut turpis. Praesent pretium magna in nibh hendrerit et "

+ "elementum tellus viverra. Praesent eu ante diam. Proin risus "

+ "eros, dapibus at eleifend sit amet, blandit eget purus. "

+ "Pellentesque eu mollis orci. Sed venenatis diam a nisl tempor "

+ "congue.

"

+ "");

JPanel panel = new JPanel(new BorderLayout());

panel.add(label, BorderLayout.NORTH);

panel.setPreferredSize(new Dimension(640, 480));

return panel;

}

/**

* @param args

*/

public static void main(String[] args) {

SwingUtilities.invokeLater(new Runnable() {

@Override

public void run() {

JFrame frame = new JFrame();

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setContentPane(createPanel());

frame.pack();

frame.setVisible(true);

}

});

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值