问题描述
GridBagLayout 中 gridheight 和 gridweight 的最大单元格数是多少,以便我可以根据需要排列我的按钮?
解决方法
最大值基于另一行中的组件数。
例如,如果第一行有四个组件,每个组件的网格宽度为 1,那么第二行组件的最大网格宽度将为 4。
你不能只给一个组件一个随机的网格宽度,因为 GridBagLayout 不知道(默认情况下)每列的宽度应该是多少,除非一个组件被添加到一个列中。
但是,如果您为每列配置了最小宽度的 GridBagLayout,则最大宽度将取决于您分配的默认宽度数。参见:https://stackoverflow.com/a/59022153/131872 示例。它允许您定义网格大小,然后在网格内随机添加组件。