Sin*_*hot 11
如果您不介意将标签文本包装在html
标签中,那么当JLabel的容器宽度太窄而无法容纳所有内容时,JLabel会自动对其进行自动换行.例如,尝试将其添加到GUI,然后将GUI的大小调整得太窄 - 它将换行:
new JLabel("<html>This is a really long line that I want to wrap around.</html>");
Run Code Online (Sandbox Code Playgroud)
我建议创建自己的自定义组件,在包装时模拟JLabel样式:
import javax.swing.JTextArea;
public class TextNote extends JTextArea {
public TextNote(String text) {
super(text);
setBackground(null);
setEditable(false);
setBorder(null);
setLineWrap(true);
setWrapStyleWord(true);
setFocusable(false);
}
}
Run Code Online (Sandbox Code Playgroud)
然后你只需要打电话:
new TextNote("Here is multiline content.");
Run Code Online (Sandbox Code Playgroud)
textNote.setRows(2)
如果要pack()
正确计算父组件的高度,请确保设置行数().
归档时间: |
|
查看次数: |
13329 次 |
最近记录: |