如何使组件占据GridBagLayout中的所有可用空间?

问题描述:

在我的Swing应用程序中,我有一个使用GridBagLayout的面板。在那里,我有3列,其中一列中有一个JTextField。我想要的是设置此JTextField的宽度(使用setPreferredSize()方法),以便占用其列的所有可用空间。如何使组件占据GridBagLayout中的所有可用空间?

据我所知,根据我使用GridBagConstraints分配给他们的权重来计算列的宽度。我试图从面板宽度减去同一行上其他组件宽度的总和,但似乎并不奏效,显然是因为边距和插入不同。

那么,如何让我的JTextField占据所有可用空间呢?

看一看......

这将使你控制组件填充一个给定的细胞和“权重”量的细胞给其他人