Java 使用GridBagLayout设置文本字段的默认大小

Java 使用GridBagLayout设置文本字段的默认大小,java,eclipse,user-interface,layout,Java,Eclipse,User Interface,Layout,我在对齐文本字段时遇到问题。我一直在尝试使用gridbaglayout,但我很难让文本字段保持相同的大小。是否可以使用此布局管理器设置默认文本字段大小 private void createWidgets() { GridBagLayout gridbag = new GridBagLayout(); GridBagConstraints c = new GridBagConstraints(); c.fill = GridBagConstr

我在对齐文本字段时遇到问题。我一直在尝试使用gridbaglayout,但我很难让文本字段保持相同的大小。是否可以使用此布局管理器设置默认文本字段大小

private void createWidgets() {
         GridBagLayout gridbag = new GridBagLayout();
         GridBagConstraints c = new GridBagConstraints();

        c.fill = GridBagConstraints.BOTH;
        c.weightx = 1.0;

        JPanel leftSidePanel = new BlueJPanel(new GridLayout(4, 1));
        JPanel fNameEntry = new BlueJPanel(gridbag);
        JPanel sNameEntry = new BlueJPanel(gridbag);
        JPanel phoneNoEntry = new BlueJPanel(gridbag);
        JPanel NINumberEntry = new BlueJPanel(gridbag);

        fNameEntry.add(new JLabel("First Name"), c);

        JTextField fNameField = new JTextField();
        fNameField.setColumns(10);
        fNameEntry.add(fNameField, c);

        sNameEntry.add(new JLabel("Surname"), c);
        JTextField sNameField = new JTextField();
        sNameField.setColumns(10);
        sNameEntry.add(sNameField, c);

        phoneNoEntry.add(new JLabel("Phone Number"), c);
        JTextField phoneNoField = new JTextField();
        phoneNoField.setColumns(10);
        phoneNoEntry.add(phoneNoField, c);

        NINumberEntry.add(new JLabel("National Insurance Number"), c);
        JTextField NINumberField = new JTextField();
        NINumberField.setColumns(10);
        NINumberEntry.add(NINumberField, c);

        leftSidePanel.add(fNameEntry);
        leftSidePanel.add(sNameEntry);
        leftSidePanel.add(phoneNoEntry);
        leftSidePanel.add(NINumberEntry);
        this.add(leftSidePanel, BorderLayout.WEST);
不同大小的文本字段

提前感谢您的帮助