Думал, что выложу некоторый код, как это сделать с помощью GridBagLayout. Может быть полезно, когда у вас есть что-то, что не совсем подходит для BorderLayout, что часто бывает при создании GUI.
public class Main {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
JFrame frame = new JFrame("GridBagLayout Demo");
frame.setLayout(new GridBagLayout());
JLabel label = new JLabel("Demo Label");
JTextField textField = new JTextField("Demo Text");
JComboBox comboBox = new JComboBox(new String[] {"hello", "goodbye", "foo"});
GridBagConstraints cons = new GridBagConstraints();
cons.insets = new Insets(10, 10, 10, 10);
frame.add(label, cons);
cons.gridx = 1;
cons.weightx = 1;
cons.weighty = 1;
cons.insets = new Insets(10, 0, 10, 10);
cons.fill = GridBagConstraints.HORIZONTAL;
frame.add(textField, cons);
cons.gridx = 2;
cons.weightx = 0;
cons.weighty = 0;
cons.insets = new Insets(10, 0, 10, 10);
cons.fill = GridBagConstraints.NONE;
frame.add(comboBox, cons);
frame.pack();
frame.setVisible(true);
}
}