См. http://java.sun.com/docs/books/tutorial/uiswing/layout/none.html для абсолютного позиционирования в Swing :) Однако, в основном, вы бы этого избежали и использовали правильные менеджеры по расположению. Для этого я предлагаю использовать MigLayout , который является невероятно мощным менеджером макетов (легко задавать макеты непосредственно в коде), или с дизайнером пользовательского интерфейса * Netbeans , *1007* Mattise , который использует GridBagLayout и автоматически записывает файлы .java с точками вставки для вашего собственного кода, для ответа на события пользовательского интерфейса и тому подобное.
альтернативный текст http://i.d.com.com/i/dl/media/dlimage/10/58/06/105806_large.jpeg
Пример MigLayout:
JPanel p = new JPanel(new MigLayout("", "[right]"));
p.add(new JLabel("General"), "split, span, gaptop 10");
p.add(new JSeparator(), "growx, wrap, gaptop 10");
p.add(new JLabel("Company"), "gap 10");
p.add(new JTextField(""), "span, growx");
p.add(new JLabel("Contact"), "gap 10");
p.add(new JTextField(""), "span, growx, wrap");
p.add(new JLabel("Propeller"),"split, span, gaptop 10");
p.add(new JSeparator(), "growx, wrap, gaptop 10");
p.add(new JLabel("PTI/kW"), "gap 10");
p.add(new JTextField(10), "");
p.add(new JLabel("Power/kW"), "gap 10");
p.add(new JTextField(10), "wrap");
p.add(new JLabel("R/mm"), "gap 10");
p.add(new JTextField(10), "wrap");
p.add(new JLabel("D/mm"), "gap 10");
p.add(new JTextField(10));