请教图片这种情况是怎么回事

图片说明

部分代码:
private void setupComponent(JComponent component, int gridx, int gridy,
int gridwidth, int ipadx, boolean fill) {
final GridBagConstraints gridBagConstrains = new GridBagConstraints();
gridBagConstrains.gridx = gridx;
gridBagConstrains.gridy = gridy;
gridBagConstrains.insets = new Insets(5, 1, 3, 1); //指定一个容器在它上、左、下、右边界上四个空白宽度
if (gridwidth > 0)
gridBagConstrains.gridwidth = gridwidth;
if (ipadx > 1)
gridBagConstrains.ipadx = ipadx;
if (fill)
gridBagConstrains.fill = GridBagConstraints.HORIZONTAL;
add(component, gridBagConstrains);
}

——————
setupComponent(new JLabel("合同价格:"), 0, 0, 1, 1, false);
heTongJiaGe = new JTextField();
setupComponent(heTongJiaGe, 1, 0, 2, 1, true);

setupComponent(new JLabel("核定价格:"), 3, 0, 1, 1, false);
heDingJiaGe = new JTextField();
setupComponent(heDingJiaGe, 4, 0, 2, 1, true);

setupComponent(new JLabel("房屋面积:"), 0, 1, 1, 1, false);
mianJi = new JTextField();
setupComponent(mianJi, 1, 1, 2, 1, true);

setupComponent(new JLabel("房屋年限:"), 3, 1, 1, 1, false);
nianXian = new JTextField();
setupComponent(mianJi, 4, 1, 2, 1, true);

求指教

使用了默认布局吧,换成groupLayout布局试试,还有开发swing界面程序,我一般用windowsBuilder插件,建议使用

package org.yanbei.windowsbuilder;

import java.awt.EventQueue;

import javax.swing.JFrame;
import java.awt.Font;
import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JPanel;
import javax.swing.LayoutStyle.ComponentPlacement;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

public class MainWindow {

private JFrame frame;
private JTextField textField;
private JTextField textField_1;
private JTextField textField_2;
private JTextField textField_3;
private JTextField textField_4;
private JTextField textField_5;

/**
 * Launch the application.
 */
public static void main(String[] args) {
    EventQueue.invokeLater(new Runnable() {
        public void run() {
            try {
                MainWindow window = new MainWindow();
                window.frame.setVisible(true);
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    });
}

/**
 * Create the application.
 */
public MainWindow() {
    initialize();
}

/**
 * Initialize the contents of the frame.
 */
private void initialize() {
    frame = new JFrame();
    frame.setFont(new Font("微软雅黑", Font.BOLD, 14));
    frame.setTitle("\u5B58\u91CF\u623F\u4EA4\u6613\u7A0E\u6536");
    frame.setBounds(100, 100, 751, 449);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    JPanel panel = new JPanel();

    JPanel panel_1 = new JPanel();

    JPanel panel_2 = new JPanel();
    GroupLayout groupLayout = new GroupLayout(frame.getContentPane());
    groupLayout.setHorizontalGroup(
        groupLayout.createParallelGroup(Alignment.LEADING)
            .addComponent(panel_2, GroupLayout.DEFAULT_SIZE, 735, Short.MAX_VALUE)
            .addComponent(panel, GroupLayout.DEFAULT_SIZE, 735, Short.MAX_VALUE)
            .addComponent(panel_1, GroupLayout.DEFAULT_SIZE, 735, Short.MAX_VALUE)
    );
    groupLayout.setVerticalGroup(
        groupLayout.createParallelGroup(Alignment.LEADING)
            .addGroup(groupLayout.createSequentialGroup()
                .addComponent(panel, GroupLayout.PREFERRED_SIZE, 67, GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(ComponentPlacement.RELATED)
                .addComponent(panel_1, GroupLayout.PREFERRED_SIZE, 235, GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(ComponentPlacement.RELATED)
                .addComponent(panel_2, GroupLayout.DEFAULT_SIZE, 97, Short.MAX_VALUE))
    );

    JPanel panel_3 = new JPanel();

    JPanel panel_4 = new JPanel();

    JPanel panel_5 = new JPanel();
    GroupLayout gl_panel_1 = new GroupLayout(panel_1);
    gl_panel_1.setHorizontalGroup(
        gl_panel_1.createParallelGroup(Alignment.LEADING)
            .addGroup(gl_panel_1.createSequentialGroup()
                .addComponent(panel_3, GroupLayout.PREFERRED_SIZE, 98, GroupLayout.PREFERRED_SIZE)
                .addPreferredGap(ComponentPlacement.RELATED)
                .addComponent(panel_4, GroupLayout.DEFAULT_SIZE, 449, Short.MAX_VALUE)
                .addPreferredGap(ComponentPlacement.UNRELATED)
                .addComponent(panel_5, GroupLayout.PREFERRED_SIZE, 172, GroupLayout.PREFERRED_SIZE))
    );
    gl_panel_1.setVerticalGroup(
        gl_panel_1.createParallelGroup(Alignment.LEADING)
            .addComponent(panel_5, Alignment.TRAILING, GroupLayout.DEFAULT_SIZE, 203, Short.MAX_VALUE)
            .addComponent(panel_3, Alignment.TRAILING, GroupLayout.DEFAULT_SIZE, 203, Short.MAX_VALUE)
            .addComponent(panel_4, Alignment.TRAILING, GroupLayout.DEFAULT_SIZE, 203, Short.MAX_VALUE)
    );

    JLabel label = new JLabel("\u5408\u540C\u4EF7\u683C:");

    textField = new JTextField();
    textField.setColumns(10);

    JLabel label_1 = new JLabel("\u6838\u5B9A\u4EF7\u683C:");

    textField_1 = new JTextField();
    textField_1.setColumns(10);

    JLabel label_2 = new JLabel("\u623F\u5C4B\u9762\u79EF:");

    textField_2 = new JTextField();
    textField_2.setColumns(10);

    JLabel label_3 = new JLabel("\u623F\u5C4B\u5E74\u9650:");

    textField_3 = new JTextField();
    textField_3.setColumns(10);

    JLabel label_4 = new JLabel("\u5951\u7A0E:");

    textField_4 = new JTextField();
    textField_4.setText("0.");
    textField_4.setEditable(false);
    textField_4.setColumns(10);

    JLabel label_5 = new JLabel("\u5370\u82B1\u7A0E:");

    textField_5 = new JTextField();
    textField_5.setText("0.");
    textField_5.setEditable(false);
    textField_5.setColumns(10);

    JButton button = new JButton("\u8BA1\u7B97");

    JButton button_1 = new JButton("\u6E05\u9664");
    button_1.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
        }
    });
    GroupLayout gl_panel_4 = new GroupLayout(panel_4);
    gl_panel_4.setHorizontalGroup(
        gl_panel_4.createParallelGroup(Alignment.LEADING)
            .addGroup(gl_panel_4.createSequentialGroup()
                .addGap(50)
                .addGroup(gl_panel_4.createParallelGroup(Alignment.LEADING)
                    .addGroup(gl_panel_4.createSequentialGroup()
                        .addComponent(label)
                        .addPreferredGap(ComponentPlacement.RELATED)
                        .addComponent(textField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                        .addGap(18)
                        .addComponent(label_1)
                        .addPreferredGap(ComponentPlacement.RELATED)
                        .addComponent(textField_1, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
                    .addGroup(gl_panel_4.createSequentialGroup()
                        .addGap(14)
                        .addComponent(label_5)
                        .addPreferredGap(ComponentPlacement.RELATED)
                        .addGroup(gl_panel_4.createParallelGroup(Alignment.LEADING)
                            .addGroup(gl_panel_4.createSequentialGroup()
                                .addGap(46)
                                .addComponent(button)
                                .addGap(33)
                                .addComponent(button_1))
                            .addComponent(textField_5, GroupLayout.DEFAULT_SIZE, 254, Short.MAX_VALUE)))
                    .addGroup(gl_panel_4.createSequentialGroup()
                        .addGroup(gl_panel_4.createParallelGroup(Alignment.TRAILING)
                            .addComponent(label_4)
                            .addComponent(label_2))
                        .addPreferredGap(ComponentPlacement.RELATED)
                        .addGroup(gl_panel_4.createParallelGroup(Alignment.LEADING, false)
                            .addComponent(textField_4)
                            .addGroup(gl_panel_4.createSequentialGroup()
                                .addComponent(textField_2, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                                .addGap(18)
                                .addComponent(label_3)
                                .addPreferredGap(ComponentPlacement.RELATED)
                                .addComponent(textField_3, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)))))
                .addGap(85))
    );
    gl_panel_4.setVerticalGroup(
        gl_panel_4.createParallelGroup(Alignment.LEADING)
            .addGroup(gl_panel_4.createSequentialGroup()
                .addGap(43)
                .addGroup(gl_panel_4.createParallelGroup(Alignment.BASELINE)
                    .addComponent(label)
                    .addComponent(textField, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                    .addComponent(label_1)
                    .addComponent(textField_1, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
                .addGap(18)
                .addGroup(gl_panel_4.createParallelGroup(Alignment.BASELINE)
                    .addComponent(label_2)
                    .addComponent(textField_2, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                    .addComponent(label_3)
                    .addComponent(textField_3, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
                .addGap(18)
                .addGroup(gl_panel_4.createParallelGroup(Alignment.BASELINE)
                    .addComponent(textField_4, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                    .addComponent(label_4))
                .addPreferredGap(ComponentPlacement.UNRELATED)
                .addGroup(gl_panel_4.createParallelGroup(Alignment.BASELINE)
                    .addComponent(textField_5, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                    .addComponent(label_5))
                .addPreferredGap(ComponentPlacement.RELATED, 7, Short.MAX_VALUE)
                .addGroup(gl_panel_4.createParallelGroup(Alignment.BASELINE)
                    .addComponent(button)
                    .addComponent(button_1)))
    );
    panel_4.setLayout(gl_panel_4);
    panel_1.setLayout(gl_panel_1);
    frame.getContentPane().setLayout(groupLayout);
}

}

图片说明

windowsBuilder 传送门
http://download.csdn.net/download/yushiyoufight/9896003