5

デフォルトのレイアウトマネージャーを使用すると、フレームのサイズが変更されたときにJLabelに省略記号が表示されます。

によって示されるように:

public static void main(String[] args) {
    final JFrame jFrame = new JFrame("JLabel, show me your ellipsis!");

    jFrame.getContentPane().add(new JLabel("Sure darling! Shrink me and I'll show you"));

    jFrame.pack();
    jFrame.setVisible(true);
}

ただし、MigLayoutはそのような動作を表示しません!

public static void main(String[] args) {
    final JFrame jFrame = new JFrame("JLabel, show me your ellipsis!");

    jFrame.getContentPane().setLayout(new MigLayout());
    jFrame.getContentPane().add(new JLabel("Nope! I just do not know you well enough!"));

    jFrame.pack();
    jFrame.setVisible(true);
}

考えられるすべてのレイアウト/コンポーネント制約を試しました。そのようなことがミグでも可能かどうか誰かが知っていますか?

4

1 に答える 1

6

JLabelの最小サイズは、推奨サイズとほぼ同じです(または正確には覚えていません)。MigLayoutは、コンポーネントを最小値まで縮小するだけです。したがって、minSizeよりも小さいサイズを許可するコンポーネント制約を追加する必要があります。

content.add(label, "wmin 10lp");
于 2013-03-25T17:00:18.780 に答える