我有一个JLabel,一个JButton和一个JTextField都在JPanel上按顺序水平排列 . JTextField最初没有任何文本 . JLabel和JButton各自以其自然宽度显示 . 但是,JTextField的宽度非常小 . (然后在用户输入文本时展开 . )
如何使JTextField使用JLabel和JButton遗留下来的所有剩余JPanel宽度,并保持该宽度,而不管输入的文本是什么?
我从来没有使用 BoxLayout 所以它可以做到这一点 . 但是,当然, GridBagLayout 可以做到 .
BoxLayout
GridBagLayout
将GridBagConstraints设置为gridx = 0,1,2(分别为组件1,2和3)gridy = 0(对于所有这些)和weightx = 0表示前两个,weightx = 1.0表示最后一个组件 .
1 回答
我从来没有使用
BoxLayout
所以它可以做到这一点 . 但是,当然,GridBagLayout
可以做到 .将GridBagConstraints设置为gridx = 0,1,2(分别为组件1,2和3)gridy = 0(对于所有这些)和weightx = 0表示前两个,weightx = 1.0表示最后一个组件 .