我正在尝试使用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的视频系统)。
答案 0 :(得分:0)
根据docs:
,看起来支持百分比覆盖UI设置的组件的默认大小 委托或由开发人员明确地在组件上。大小是 指定为BoundSize。请参阅上面的Common Argument Types部分 作出解释。请注意,表达式是受支持的,您可以使用 实例设置要使用“width pref + 10px”的组件的大小 它比正常大10个像素或“宽度最大(100,10%)”来制作它 容器宽度的10%,但最大为100像素。
也许尝试类似:"width max(100%, 100%)"
。