JLabel宽度与文本长度无关

时间:2011-01-15 17:06:04

标签: java text jpanel long-integer jlabel

我在一个水平重新调整大小的JPanel中有一个JLabel。 JLabel自动调整其宽度以适应JPanel。如果我插入一长行文本(例如“aaaaaaaaaaaaaaaaaaaaaaa”),JLabel不会截断文本。相反,宽度会重新调整大小以适应文本,从而导致JPanel的重新调整大小。

相反,我希望我的文本被一个elipse(...)截断。 JLabel宽度不得继承文本的长度,只能从JPanel宽度继承。

3 个答案:

答案 0 :(得分:4)

请尝试以下操作:

final JLabel label = ...
...
label.setText("prototype text to define size");
final Dimension size = label.getPreferredSize();
label.setMinimumSize(size);
label.setPreferredSize(size);
...
label.setText(...);

答案 1 :(得分:0)

使用不同的布局或在JLabel上设置最大尺寸。

答案 2 :(得分:0)

定义max-和preferedsize

时,需要禁用'Horizo​​ntal Resizable'