使用MiGLayout固定基于百分比的网格

时间:2012-03-11 21:45:02

标签: java javafx miglayout

我正在尝试使用MiGLayout创建一个对其子项强制执行的网格。这意味着如果我将一个子项插入网格位置(1,1)并且网格的大小为[10%!],则该子项不能更大并且与其他单元格重叠。必须缩小孩子以适应网格细胞。

这是我到目前为止所做的:

new MigPane("", "[5%!][20%!][5%!][65%!][5%!]", "[45%!][50%!][5%!]");

现在,我在Grid 1,1中插入一个很大的组件(我无法控制的图片),如下所示:

migPane.add(myImageView, "cell 1 1, width 100%!");

但是,这似乎根本不限制ImageView。

如何告诉MiGLayout我希望将“myImageView”放入网格1,1并将其调整为适合?是否有“适合”关键字? :)

请注意,指定像素/点数/毫米/厘米/英寸的任何内容都不是我想要的。我的应用程序总是全屏运行,必须无缝扩展(它不是传统的表单应用程序,它是使用JavaFX的视频系统)。

1 个答案:

答案 0 :(得分:0)

根据docs

,看起来支持百分比
  

覆盖UI设置的组件的默认大小   委托或由开发人员明确地在组件上。大小是   指定为BoundSize。请参阅上面的Common Argument Types部分   作出解释。请注意,表达式是受支持的,您可以使用   实例设置要使用“width pref + 10px”的组件的大小   它比正常大10个像素或“宽度最大(100,10%)”来制作它   容器宽度的10%,但最大为100像素。

也许尝试类似:"width max(100%, 100%)"