Swing - Tela Cadastro de Clientes

Pessoal estou com uma grande dificuldade para arrumar a minha tela de cadastro de clientes…

segue aí como quero que fique… e como ela está… no código ainda não coloquei o DDD e Celular… depois vo colocar…


import java.awt.Container;
import java.awt.GridLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class TelaCadastro extends JFrame {
	
	private JTextField campoNome;
	private JTextField campoDDD;
	private JTextField campoTelefone;
	private JTextField campoEmail;
	private JTextField campoEndereco;
	private JTextField campoNumero;
	private JTextField campoComplemento;
	private JTextField campoBairro;
	private JTextField campoCidade;
	private JTextField campoEstado;
	private JTextField campoCep;
	private JTextField campoCPF;
	private JTextField campoRG;
	private JTextField campoNascimento;
	
	private JLabel nome;
	private JLabel ddd;
	private JLabel telefone;
	private JLabel email;
	private JLabel endereco;
	private JLabel numero;
	private JLabel complemento;
	private JLabel bairro;
	private JLabel cidade;
	private JLabel estado;
	private JLabel cep;
	private JLabel cpf;
	private JLabel rg;
	private JLabel nascimento;
	
	public TelaCadastro(String titulo) {
		super(titulo);
		
		campoNome = new JTextField();
		campoDDD = new JTextField();
		campoTelefone = new JTextField();
		campoEmail = new JTextField();
		campoEndereco = new JTextField();
		campoNumero = new JTextField();
		campoComplemento = new JTextField();
		campoBairro = new JTextField();
		campoCidade = new JTextField();
		campoEstado = new JTextField();
		campoCep = new JTextField();
		campoCPF = new JTextField();
		campoRG = new JTextField();
		campoNascimento = new JTextField();

		nome = new JLabel("Nome:");
		ddd = new JLabel("DDD:");
		telefone = new JLabel("Telefone:");
		email = new JLabel("E-mail:");
		endereco = new JLabel("Endereço:");
		numero = new JLabel("Nº:");
		complemento = new JLabel("Complemento:");
		bairro = new JLabel("Bairro:");
		cidade = new JLabel("Cidade:");
		estado = new JLabel("Estado:");
		cep = new JLabel("Cep:");
		cpf = new JLabel("CPF:");
		rg = new JLabel("RG:");
		nascimento = new JLabel("Nacimento: dd/mm/aa");
	}
	
	private void mostrarTela() {
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setLocation(150, 300);
		setLayout(new GridLayout(2, 1));
		Container cp = getContentPane();
		JPanel panel = new JPanel();
		panel.setLayout(new GridLayout(4, 4));
		panel.add(nome);
		panel.add(campoNome);
		panel.add(email);
		panel.add(campoEmail);
		panel.add(ddd);
		panel.add(campoDDD);
		panel.add(telefone);
		panel.add(campoTelefone);
		panel.add(endereco);
		panel.add(campoEndereco);
		panel.add(numero);
		panel.add(campoNumero);
		panel.add(complemento);
		panel.add(campoComplemento);
		panel.add(bairro);
		panel.add(campoBairro);
		cp.add(panel);
		
		JPanel panel2 = new JPanel();
		panel2.setLayout(new GridLayout(2, 6));
		panel2.add(cep);
		panel2.add(campoCep);
		panel2.add(cidade);
		panel2.add(campoCidade);
		panel2.add(estado);
		panel2.add(campoEstado);
		panel2.add(rg);
		panel2.add(campoRG);
		panel2.add(cpf);
		panel2.add(campoCPF);
		panel2.add(nascimento);
		panel2.add(campoNascimento);
		cp.add(panel2);
				
		pack();
		setVisible(true);
		
	}
	
	public static void main(String[] args) {
		TelaCadastro executar = new TelaCadastro("Cadastro de Cliente");
		executar.mostrarTela();
	}
}




Já experimentou utilizar o editor visual do netbeans? Você faz em dois toques isso ae.
Abraços.

eu nunca usei o netBens… ele é mto diferente do Eclipse???

Tem o projeto http://swingbean.sourceforge.net/ que ajuda bastante o desenvolvimento.

http://www.netbeans.org/

Pro Eclipse tem o Visual Editor (No eclipse 3.3 não funciona) é só baixar os plugins no site do eclipse.

O editor do netbeans é melhor do que o VE do eclipse, na minha opinião.

vc tem o link destes plugins???

qual é a melhor IDE para se programar com interface gráfica na linguagem JAVA???

abraços e por enquanto mto obrigado galera!

NetBeans eh bem melhor que eclipse pra interface grafica.

tem algum link de algum site que tenha um “manual” do netbens???

já estou fazendo o download, vou fazer um teste, vou ver se consigo me adaptar com ele… mudar do JCreator para o Eclipse foi fácil… vamos ver se será fácil mudar para netbens…

O NetBeans é melhor mais trava o codigo, ai voce precisa saber mais sobre a IDE do que a programação java, o VE existi limitações mais te deixa editar o codigo.

no meu caso então será mais util o eclipse pq eu quero me aproximar mais do código para entender melhor o que cada instrução faz…

mas em relação ao que quero fazer, só tem como fazer isso com edição visual???

Não voce pode desenvolver manualmente, te aconselho a desenvolver em GridBagLayout, com ele voce consegue controlar melhor os componentes.

Da pra desenvolver a interface grafico no NetBeans e depois programar o resto no Eclipse?

Isso que o Cap. Nascimento falou é verdade.
O NetBeans trava o código e para alterá-lo você tem que mexer nas propriedades por dentro da IDE.

Mas o VE é muito fraquinho em comparação ao Matisse do NetBeans… sendo assim para desenhar telas, o NetBeans é bem melhor com certeza.

Agora se ainde preferir o Eclipse, tem um outro editor que eu usei pouco, mas percebi que é bem interessante.
É o Jigloo.
O site dele é: http://www.cloudgarden.com/jigloo/

Abraços,

Marcos A. C. Jordão’’

[quote=raci0nal]Isso que o Cap. Nascimento falou é verdade.
O NetBeans trava o código e para alterá-lo você tem que mexer nas propriedades por dentro da IDE.

Mas o VE é muito fraquinho em comparação ao Matisse do NetBeans… sendo assim para desenhar telas, o NetBeans é bem melhor com certeza.

Agora se ainde preferir o Eclipse, tem um outro editor que eu usei pouco, mas percebi que é bem interessante.
É o Jigloo.
O site dele é: http://www.cloudgarden.com/jigloo/

Abraços,

Marcos A. C. Jordão’’[/quote]

Este jigloo é pago né?

Na moral, a tela do modo que vc quer é perfeita para ser feita usando FormsLayout da JGoodies.
Dá uma olhada:
http://www.jgoodies.com/freeware/forms/
Mais fácil impossível(sem ferramenta RAD, claro), além do código ser fácil de ser compreendido.
Parece que algo parecido á ele será incluso na JDK 7. :wink:

[quote=dcbasso]
Este jigloo é pago né?[/quote]

Sim, ele tem uma versão comercial.

galera estou tentando fazer manualmente apenas com código enquanto nao baixo os plugins do eclipse… e tem uma parte que estou tendo mta dificuldade que seria alinhar o panel dentro do frame… eu preciso alinhar ele a esquerda (west) mas nao estou conseguindo…

o meu frame

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setLocation(150, 300);
		Container cp = getContentPane();
		setLayout(new GridLayout(6, 1));

e quando passo o panel para ele…

JPanel panel = new JPanel();
		panel.add(nome);
		panel.add(campoNome);
		panel.add(email);
		panel.add(campoEmail);

JPanel panel2 = new JPanel();
		panel2.add(dddTelefone);
		panel2.add(campoDDD);
		panel2.add(telefone);
		panel2.add(campoTelefone);
		panel2.add(dddCelular);
		panel2.add(campoDDDCel);
		panel2.add(celular);
		panel2.add(campoCelular);
cp.add(panel, BorderLayout.WEST);
		cp.add(panel2, BorderLayout.WEST);
		pack();
		setVisible(true);

fazendo isso ele fica centralizado dentro da janela… mas quero alinhar tudo que jogar dentro de meu frame a equerda, tem como fazer isso???

Tente alterar para BorderLayout ao invés de GridLayout
talvez funcione
t+