水平方向にサイズ変更可能な JPanel に JLabel があります。JLabel は、JPanel に合わせて幅を自動的にサイズ変更します。長いテキスト行 (「aaaaaaaaaaaaaaaaaaaaaaaa」など) を挿入すると、JLabel はテキストを切り捨てません。代わりに、幅はテキストに合わせてサイズ変更され、JPanel の醜いサイズ変更も引き起こします。
代わりに、テキストを省略記号 (...) で切り捨てたいと思います。JLabel の幅は、テキストの長さから継承するのではなく、JPanel の幅からのみ継承する必要があります。
7179 次
3 に答える
4
以下を試してください:
final JLabel label = ...
...
label.setText("prototype text to define size");
final Dimension size = label.getPreferredSize();
label.setMinimumSize(size);
label.setPreferredSize(size);
...
label.setText(...);
于 2011-01-15T18:20:36.213 に答える
0
別のレイアウトを使用するか、JLabel で最大サイズを設定してください。
于 2011-01-15T17:10:45.350 に答える
0
最大サイズと優先サイズを定義するときは、「水平サイズ変更可能」を無効にする必要があります
于 2013-01-10T20:14:33.830 に答える