Organizar componentes em um frame

Olá, estou com uma dúvida, utilizo como gerenciador de layout o GridBagLayout, então fiz várias funções …

Como :

AdicionarLabel
AdicionarCampo

E quando posiciono eles no Frame eles ficam na posição correta, mas se eu adiciono uma segundo linha, a primeira tende a se dividir da mesma forma da segunda.

Existe alguma maneira de consertar isso?

Aguardo …

Kat :shock:

Leia este exemplo:
http://java.sun.com/docs/books/tutorial/uiswing/layout/gridbag.html

Leia estes também;
http://www.javaalmanac.com/egs/java.awt/gridbag_Using.html

Se mesmo assim não coseguir fazer o que vc deseja, mande o código da classe…

Ola, vlw pelas dicas . iluminou minhas idades, mas ainda nao consigo … vou postar um outro codigo q fiz apartir do site indicado … Dê uma olhadinha

import javax.swing.*;

import java.awt.*;

public class cadEmpresa extends JFrame{

Container c;
JPanel panelBotao = new JPanel();
JPanel panelFundo = new JPanel();
JPanel panelComponente = new JPanel();

JLabel labelId = new JLabel(" ID");
JLabel labelNome = new JLabel(" Nome");
JLabel labelNasc = new JLabel(" Data Nascimento");
JLabel labelSexo = new JLabel(" Sexo");
JLabel labelEndereco = new JLabel(" Endereço");
JLabel labelNumero  = new JLabel(" N.º");
JLabel labelCompl = new JLabel(" Complemento");
JLabel labelBairro = new JLabel(" Bairro");
JLabel labelCidade = new JLabel(" Cidade");
JLabel labelUf = new JLabel(" Estado");
JLabel labelCep = new JLabel(" CEP");
JLabel labelTel = new JLabel(" Telefone");
JLabel labelFax = new JLabel(" FAX");
JLabel labelCelular = new JLabel(" Celular");
JLabel labelEmail = new JLabel(" E - mail");
JLabel labelProf = new JLabel(" Profissão");
JLabel labelCpf = new JLabel(" CPF n.º");
JLabel labelRg = new JLabel(" RG n.º");
JLabel labelObs = new JLabel(" Observações");

JTextField textId = new JTextField(4);
JTextField textNome = new JTextField(40);
JTextField textNasc = new JTextField(10);
JComboBox comboSexo = new JComboBox();
JTextField textEndereco = new JTextField(30);
JTextField textNumero  = new JTextField(4);
JTextField textCompl  = new JTextField(8);
JTextField textBairro = new JTextField(10);
JTextField textCidade = new JTextField(20);
JTextField textUf = new JTextField(4);
JTextField textCep = new JTextField(15);
JTextField textTel = new JTextField(15);
JTextField textFax = new JTextField(15);
JTextField textCelular = new JTextField(15);
JTextField textEmail = new JTextField(15);
JTextField textProf = new JTextField(15);
JTextField textEmpresa = new JTextField(15);
JTextField textCpf = new JTextField(15);
JTextField textRg = new JTextField(15);
JTextArea  textObs = new JTextArea(3,50);

JButton buttonAdicionar = new JButton("Adicionar");
JButton buttonCancelar = new JButton("Cancelar");
JButton buttonConsultar = new JButton("Consultar");
JButton buttonExcluir = new JButton("Excluir");
JButton buttonFechar = new JButton("Fechar");

public cadEmpresa() {
	super("Cadastro de Empresas");
	
c = getContentPane();
c.add(panelFundo);

// ------ Criando o layout
GridBagLayout layout = new GridBagLayout();

// ------ Setando o layout
panelFundo.setLayout(layout);

// ------- Organizando os itens 
GridBagConstraints gbc = new GridBagConstraints();
gbc.insets = new Insets(2,2,4,2);

gbc.gridx = 1; // coluna
gbc.gridy = 1; // linha 
layout.setConstraints(labelId, gbc);

gbc.gridx = 1;
gbc.gridy = 2;
layout.setConstraints(textId, gbc);

gbc.gridx = 2;
gbc.gridy = 1;
layout.setConstraints(labelNasc, gbc);

gbc.gridx = 2;
gbc.gridy = 2;
layout.setConstraints(textNasc, gbc);

gbc.gridx = 3;
gbc.gridy = 1;

layout.setConstraints(labelSexo, gbc);

gbc.gridx = 2;
gbc.gridy = 2;
//layout.setConstraints(textSexo, gbc);


gbc.gridx = 1;
gbc.gridy = 3;
layout.setConstraints(labelNome, gbc);

gbc.gridx = 2;
gbc.gridy = 3;
layout.setConstraints(textNome, gbc);













// ------ Adicionando os compoentes na GUI
panelFundo.add(labelId);
panelFundo.add(textId);
panelFundo.add(labelNasc);
panelFundo.add(textNasc);
panelFundo.add(labelSexo);
panelFundo.add(labelNome);
panelFundo.add(textNome);

// ------ Monstrando a GUI
pack();
setVisible(true);
}

public static void main(String[] args ) { 
    cadEmpresa exe = new cadEmpresa(); 
    exe.setDefaultCloseOperation(EXIT_ON_CLOSE);
  
     
} 

}