如何防止MigLayout超出容器的界限

时间:2010-09-07 21:06:53

标签: java miglayout

我正在尝试使用MigLayout构建一个简单的状态面板,如下所示:

setLayout(new MigLayout("fillx", "[][p]")); // removing constructor args makes no difference
add(createStatusLabel(), "span 2, wrap");
add(createProgressBar(), "growx, pushx");
add(createCancelButton(), "");

只要状态标签显示的状态消息足够短以适合当前面板的大小(取消按钮保持右对齐,并且进度条调整大小以占用剩余空间),这样就可以正常工作。如果状态消息太长,则不会被裁剪,并导致该区域超出容器的边界,导致取消按钮被推离屏幕。

有关如何防止这种情况发生的任何建议吗?

由于

1 个答案:

答案 0 :(得分:8)

尝试将标签的最大宽度设置为100%。

您可以通过将标签的布局更改为"span 2, wrap, wmax 100%"

来执行此操作

在我的测试中,我发现它仍然看起来不太正确,所以你可能想要减去一点长度(比如wmax 100% - 10px)以使它远离边缘。