首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MigLayout包装两行

MigLayout包装两行
EN

Stack Overflow用户
提问于 2016-11-06 18:49:27
回答 1查看 412关注 0票数 0

我刚刚开始使用MigLayout。

我已经阅读了一些文档,包括MigLayout的快速入门指南,并搜索了一些这样的问题,但我没有找到答案。我相信这是显而易见的,但就像我说的,这是我第一次和这个布局经理在一起。

我正试图使我的MigLayout中的一行的高度是其他行的两倍。

我的代码一开始是:

代码语言:javascript
复制
public GameWindow() {
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setLayout(new MigLayout("fill"));
    add(new PanelHud(), "grow, span 2, wrap");
    add(new PanelWorldView(), "grow");
    add(new PanelDetailView(), "grow, wrap");
    add(new PanelMenu(), "grow, span 2");
    pack();
    setVisible(true);
}

它产生:

这是一个很好的开始,但我想要的是中间行的两倍高的顶部和底部的行。起初,我认为我可以让中间元素跨越两行,但这是行不通的:

代码语言:javascript
复制
public GameWindow() {
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setLayout(new MigLayout("fill"));
    add(new PanelHud(), "grow, span 2, wrap");
    add(new PanelWorldView(), "grow, span 1 2");
    add(new PanelDetailView(), "grow, span 1 2, wrap");
    add(new PanelMenu(), "grow, span 2");
    pack();
    setVisible(true);
}

看起来中间的行确实是正确的大小,但是底部的行被移开了。我怎么才能解决这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-10 11:31:23

3种可能的解决方案(我可能有点过火了)。

使用自动包装,miglayout可以检测整行本身:

代码语言:javascript
复制
setLayout(new MigLayout("fill, wrap 2"));
add(new PanelHud(), "grow, span 2");
add(new PanelWorldView(), "grow, span 1 2");
add(new PanelDetailView(), "grow, span 1 2");
add(new PanelMenu(), "grow, span 2");

根据单元格进行布局:

代码语言:javascript
复制
setLayout(new MigLayout("fill", "[][]", "[][][][]"));
add(new PanelHud(), "grow, cell 0 0 2 1");
add(new PanelWorldView(), "grow, cell 0 1 1 2");
add(new PanelDetailView(), "grow, cell 1 1 1 2");
add(new PanelMenu(), "grow, cell 0 3 2 1");

使用“增长重量”(虽然这似乎不能保持小窗口大小的2:1比例):

代码语言:javascript
复制
setLayout(new MigLayout("fill", "[][]", "[grow 100][grow 200][grow 100]"));
add(new PanelHud(), "grow, span 2, wrap");
add(new PanelWorldView(), "grow");
add(new PanelDetailView(), "grow, wrap");
add(new PanelMenu(), "grow, span 2");
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40453184

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档