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

Java 如何使组件占据GridBagLayout中的所有可用空间?,java,swing,jtextfield,gridbaglayout,Java,Swing,Jtextfield,Gridbaglayout,在Swing应用程序中,我有一个使用GridBagLayout的面板。在这里,我有3列,其中一列中有一个JTextField。我想要的是设置这个JTextField的宽度(使用setPreferredSize()方法),以便它占用其列的所有可用空间 据我所知,列的宽度是根据我使用GridBagConstraints分配给它们的权重计算的。我试图从面板的宽度中减去同一行其他组件的宽度之和,但这似乎不起作用,显然是因为不同的边距和插图 那么,如何让我的JTextField占据所有可用空间呢?看看

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

据我所知,列的宽度是根据我使用GridBagConstraints分配给它们的权重计算的。我试图从面板的宽度中减去同一行其他组件的宽度之和,但这似乎不起作用,显然是因为不同的边距和插图

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

看看

这将允许您控制一个组件如何填充给定单元格,以及一个单元格相对于其他单元格的“权重”大小